包详细信息
@smithy/middleware-serde
自述文件
更新日志
Smithy Typescript Codegen Changelog
0.36.1 (2025-10-06)
Features
- Added 'pnpm' to 'PackageManager' (#1658)
 
Bug Fixes
- Fixed CBOR eventstream codegen (#1731)
 
0.36.0 (2025-09-30)
Features
0.35.0 (2025-09-18)
Features
Commandclass examples now generate with a reference to theClientconstructor input type (#1690)
Bug Fixes
- Fixed header type codegen for event streams (#1694)
 
0.34.1 (2025-09-10)
Bug Fixes
- Fixed event stream serialization when the 
@eventStreamPayloadmember is a string (#1674) 
0.34.0 (2025-07-30)
Features
- Upgraded smithy version to 1.61.0 (#1640)
 
0.33.0 (2025-07-10)
Features
Bug Fixes
- Avoided using model.getServiceShapes() for endpoint generation (#1642)
 
0.32.0 (2025-06-26)
Features
- BigIntger and BigDecimal numeric support for Smithy RPCv2 CBOR protocol (#1603)
 
0.31.1 (2025-06-23)
Bug Fixes
- use undefined placeholder for unhandled trait (#1629)
 - Added EndpointRequired config resolver to replace CustomEndpoint (#1628)
 - Corrected criteria for event stream member detection (#1624)
 - Located event stream member more carefully (#1623)
 
Chores
- Omitting the endpoint polymorphs from resolved config types (#1626)
 - Allowed protocol generators to declare error aliases (#1622)
 - Allowed endpoint params to be explicitly undefined if not required (#1618)
 
0.31.0 (2025-06-09)
Features
- Upgraded smithy version to 1.58.0 (#1616)
 - Added schema code generation and related allow-list (#1599)
 
Chores
- Updated synthetic error namespace (#1611)
 - Generated default endpoint ruleset to make code generation consistent for ruleset trait (#1589)
 
0.30.0 (2025-05-08)
Features
- Upgraded smithy version to 1.57.1 (#1576)
 - Added authSchemePreference client config (#1567)
 - Improved generated protocol test assertion messages (#1572)
 
Bug Fixes
- Allowed overwriting a protocol's priority during protocol selection (#1585)
 
0.29.1 (2025-04-24)
Chores
- Bumped version to match release of smithy-aws-typescript-codegen
 
0.29.0 (2025-04-11)
Features
- Upgraded smithy version to 1.55.0 (#1560)
 
Bug Fixes
- Fixed bug with JMESPath flatten level codegen (#1559)
 
0.28.0 (2025-04-01)
Bug Fixes
- Used backticks for example strings containing doublequotes (#1556)
 - Generated client.initConfig reference for tracking config object custody (#1550)
 - Used generic type for client config (#1549)
 - Allowed authscheme resolver to access client ref (#1548)
 
Documentation
- Added doc examples to operations (#1078)
 - Replaced GitHub org from 'awslabs' to 'smithy-lang' (#1545)
 
0.27.0 (2025-03-04)
Features
- Support MultiSelect List in OperationContextParams (#1536)
 - Support MultiSelect Flatten in OperationContextParams (#1537)
 - Upgrade smithy version to 1.53.0 (#1538)
 - Upgrade smithy version to 1.54.0 (#1540)
 
Bug Fixes
- Fixed union member serialization in CBOR (#1526)
 - Fixed allocation of strings starting with underscore and other cases (#1527)
 
Documentation
- Moved description block before deprecated tag (#1516)
 
0.26.0 (2025-01-22)
Features
- Dropped support for Node.js 16 (#1487)
 - Upgraded smithyGradleVersion to 1.2.0 (#1499)
 - Passed client configuration to loadNodeConfig calls (#1471)
 - Removed String extension in LazyJsonString (#1468)
 - Upgraded vitest to 2.1.8 (#1496)
 
Bug Fixes
- Fixed code generation issue for operationContextParam (#1475)
 - Resolved obj and array JS literals from JMESPath types for waiters (#1462)
 
0.25.0 (2024-11-18)
Features
- Upgraded smithyVersion to 1.52.0 (#1434)
 - Added default accepts=application/cbor header for Smithy RPC v2 CBOR protocol (#1427)
 - Added 
| undefinedfor optional type properties to supportexactOptionalPropertyTypes(#1448) 
Bug Fixes
- Added uuid types import when adding uuid import (#1428)
 
0.24.0 (2024-09-30)
Features
- Use spread operator for Command endpoint params only when necessary (#1396)
 - Improve IDE type navigation assistance for command classes (#1373)
 
Bug Fixes
- Allow empty string field values for headers (#1412)
 
0.23.0 (2024-09-09)
Features
codegen: Added Smithy RPCv2 CBOR protocol generator (#1280)
codegen: Added support for string array parameters in endpoints (#1376)
codegen: Added support for operation context params in endpoints (#1379)
Bug Fixes
Added logic to resolve the service specific endpoint once per client instance instead of for each request (#1382)
Fixed a bug that prevented a concrete client type (e.g.,
S3Client) to be converted to aNodeJsClient(#1389)
Documentation
0.22.0 (2024-08-06)
Features
codegen: Enabled the new identity and auth behavior by default and add a legacy auth mode (#1352)
codegen: Added logic to skip the application of the
CustomEndpointsplugin for models using Endpoints-2.0 (#1337)codegen: Added automatic default idempotency tokens in headers for requests when a token is not explicitly provided (#1327)
codegen: Added a set of built-in integration plugins to code-generator (#1321)
Bug Fixes
codegen: Fixed inconsistent ordering issue when writing client params during code-generation (#1355)
codegen: Fixed incorrect usage of string templates when generating commands (#1354)
codegen: Fixed serialization of
:event-typein event-streams where the member target-id was being used instead of the member name (#1349)codegen: Fixed issue where content-type was being set when input body was empty (#1304)
0.21.1 (2024-06-05)
Features
- Added logging for 
CredentialsProviderError(#1290) 
Bug Fixes
- Fixed issues with serializing millisecond precision timestamps for certain formats (#1289, #1295)
 - Fixed issue where 
exportwas used instead of the clearerexport type(#1284) 
0.21.0 (2024-05-22)
Breaking Changes
- Update Engines to Node.js 16, Node.js 14 is not officialy supported anymore (#1258)
 
Features
- Bumped TypeScript to ~5.2.x in smithy JS packages (#1275)
 @smithy/fetch-http-handler,@smithy/node-http-handler: Improveed stream collection performance (#1272)- Improved support for fetch and web-streams in Node.js (#1256)
 @smithy/node-http-handler,"@smithy/util-stream: Handle web streams in streamCollector and sdkStreamMixin- Added service client doc generator only when typedoc is selected (#1253)
 
Bug Fixes
@smithy/types: Fixed type transforms account for no-args operation methods (#1262)- Check dependencies when adding imports (#1239)
 - Fixed typo in 
HttpResponsedocs (#958) - Fixed URI escape path (#1224) (#1226)
 
0.20.1 (2024-04-05)
Features
- Updated SigV4 with its own header formatter to avoid import of entire eventstream-codec package (#1233)
 - Updated Smithy Version to 1.47.0 (#1225)
 
Bug Fixes
- Fix middleware-endpoint to check for s3 arn parts (#1227)
 
0.20.0 (2024-03-21)
Features
- codegen: Identity and Auth, support for the 
@authSmithy trait. See https://smithy.io/2.0/spec/authentication-traits.html#auth-trait. - codegen: Support request compression (#1129)
 - codegen: Allow commands to be constructed without arg if all arg fields optional (#1206)
 - codegen: Generate unified error dispatcher (#1150)
 - codegen: Generate Commands using Command classBuilder (#1118)
 - codegen: Paginator factory (#1115)
 - codegen: Generate paginators using a factory (#1114)
 - codegen: XML serde reduction (#1108)
 - codegen: Add requestBuilder, generate requests using a builder pattern (#1107)
 - codegen-docs: Add deprecation message in shape docs (#1209)
 - codegen-docs: Move documentation before release tag and deprecation (#1211)
 - codegen-docs: Move deprecation after description in docs (#1212)
 - codegen-docs: Add more information about BLOB values in structures (#1182)
 @smithy/types: Assertive client type helper (#1076)@smithy/*:dist-cjsartifacts are now generated as a bundle (#1146)@smithy/util-base64: Encoders now accept strings (#1176)@smithy/node-http-handler: Enable ctor arg passthrough for requestHandler (#1167)@smithy/node-http-handler: Add checked socket exhaustion warning when throughput is slow (#1164)@smithy/node-http-handler: Allow http(s).Agent ctor arg in lieu of instance (#1165)@smithy/node-http-handler: Reduce buffer copies (#867)
Bug Fixes
- codegen: Empty the contents of the dependencyVersions.properties file when creating it (#1213)
 - codegen: Import _json function at call sites (#1174)
 - codegen: Model bucketing edge case with resource shape (#1123)
 - codegen: Use 
TopDownIndex::getContainedOperations()for operation iterations (#1109) - codegen: Accommodate services with the world Client in their names (#1102)
 @smithy/middleware-retry: Retry after clock skew correction (#1170)@smithy/middleware-retry: Warn streaming requests are not retryable (#1092)@smithy/core: Handle multi-part token paths in paginator (#1160)@smithy/util-utf8: Use Node.js implementations in react-native (#1070)@smithy/smithy-client: Apply filtering when walking json arrays (#1086)@smithy/util-body-length-browser: Increase performance of body length calculation for larger payloads on browser (#1088)@smithy/middleware-serde: Allow error deserializers to populate error response body (#1180)@smithy/shared-ini-file-loader: Process sso-session names with config prefix separator (#1173)@smithy/shared-ini-file-loader: Process config files for profile names containing prefix separator (#1100)@smithy/shared-ini-file-loader: Allow dot, solidus, percent and colon characters in profile names (#1067)
Documentation
- Add readme content for signature-v4 (#1087)
 - Sigv4 README.md brackets (#1103)
 - Fix README 
smithy-build.jsonexamples (#1082) 
0.19.0 (2023-11-02)
Features
- Updated codegen plugins to match idiomatic plugin names(#1057)
 - Added flag for blocking imds v1 fallback behavior (#1059)
 - Upgraded@babel/traverse from 7.21.2 to 7.23.2 (#1041)
 - Upgraded browserify-sign from 4.2.1 to 4.2.2 (#1058)
 - Updated to use migrated 
util-endpoints(#1044) - Re-exported existing endpoint types (#1055)
 - Added util-endpoints package (#1043)
 - Allow TypeScriptIntegration to write prior to the config object literal (#1054)
 - Updated to transform inputs for platform specific type helpers (#1046)
 - Made 
unionShapedeserializer overridable (#1040, #1045) - Update to generate enum Record keys when target is enum (#1037)
 - Removed "| string" and "| number" from enum targeted members (#1028)
 - Added 
-pformkdirinbuild-generated-test-packages(#1010) - Added logging for 
buildAndCopyToNodeModules()(#1003) - Reorganized models in 
smithy-typescript-codegen-test(#995) - Updated to export empty model index if no 
model_*files exist (#996) - Read service specific endpoints for environment or config (#1014)
 - Updated to populate 
sso-sessionand services sections when loading config files (#993) - Added export 
CONFIG_PREFIX_SEPARATORfromloadSharedConfigFiles(#992) - Updated to pass configuration file as second parameter to 
configSelector(#990) - Updated to populate subsection using dot separator in section key when parsing INI files (#989)
 - Added support for reading values from main section when parsing INI files (#986)
 
Bug Fixes
- Exported 
RuntimeExtensionand ClientExtensionConfigurationinterfaces (#1057) - Removed 
TARGET_NAMESPACEfromTypeScriptSettings(#1057) - Updated Server Codegen to generate without a protocol (#1057)
 - Updated to use partial record for enum keyed types (#1049)
 - Allowed lowercase type names for endpoint parameters (#1050)
 - Added parsing for profile name with invalid '+' character (#1047)
 - Added missing map shape reference (#1038)
 - Adds parsing for profile name with invalid '@' character (#1036)
 - Treat absence of prefix whitespace as section keys when reading ini files (#1029)
 - Added missing dependency of 
@smithy/shared-ini-file-loader(#1027) - Fixed operation index file codegen (#1025)
 - Removed extra 
$fromHttpApiKeyAuthSigner(#1006) - Added await to 
signer.sign()inhttpSigningMiddleware(#1005) - Fixed 
@httpApiKeyAuthscheme property (#1001) - Fixed 
HttpAuthSchemeParameterscodegen (#998) - Fixed 
resolveHttpAuthSchemeConfigimports (#997) - Updated default 
keepalive=falsefor fetch (#1016) 
0.18.0 (2023-10-04)
Features
- Add SSDK codegen test (#825)
 - Add test script when specs are generated (#821)
 - Move vitest config to js (#833)
 - Add PackageContainer interface (#837)
 - Add codegen for improved streaming payload types (#840)
 - Set public release tags on client config interface components (#850)
 - Check for Optional Configuration in client constructor (#859)
 - Add matchSettings() to RuntimeClientPlugins (#856)
 - Add experimentalIdentityAndAuth flag (#857)
 - Add extensions to client runtime config (#852)
 - Use ASCII replacement for character 0xE2 (#866)
 - Add more auth traits to generic client tests (#882)
 - Rename defaultClientConfiguration to defaultExtensionConfiguration (#888)
 - Update codegen to use defaultExtensionConfiguration (#889)
 - Add matchSettings() to TypeScriptIntegration and TypeScriptCodegenPlugin (#901)
 - Add codegen and TS integration points for config (#881)
 - Add generic @httpApiKeyAuth support (#883)
 - Add generic @httpBearerAuth support (#884)
 - Add generic @aws.auth#sigv4 support (#885)
 - Update HttpAuthOption and HttpAuthScheme codegen (#907)
 - Update ExtensionConfigurations to generate for clients only (#911)
 - Add codegen for http component in runtime extension (#913)
 - Add codegen for HttpAuthExtensionConfiguration (#910)
 - Add HttpAuthScheme interfaces for auth scheme resolution (#928)
 - Add service and operation names to HandlerExecutionContext (#934)
 - Add httpSigningMiddleware to authorize and sign requests (#930)
 - Make writeDocs() with Runnable public (#939)
 - Refactor HttpAuthScheme properties to builders (#941)
 - Reorganize http auth module constants (#942)
 - Rename to generateDefaultHttpAuthSchemeProviderFunction() (#946)
 - Add traitId to HttpAuthScheme (#947)
 - Add customizing default httpAuthSchemeProvider and httpAuthSchemeParametersProvider (#943)
 - Add partial support for aws.auth#sigv4a (#950)
 - Update @smithy.rules#endpointRuleSet codegen (#945)
 - Add collect*() methods to dedupe ConfigFields and HttpAuthSchemeParameter (#948)
 - Add httpAuthSchemeMiddleware to select an auth scheme (#929)
 - Add SmithyContextCodeSection to CommandGenerator (#957)
 - Add link for retryModes input enum (#962)
 - Add aliases for httpSigningMiddleware (#970)
 - Update endpoint rules engine tests (#976)
 - Upgrade to Smithy 1.39.0 (#976)
 
Bug fixes
- Fix types import (#831)
 - Allow lowercase endpoint param (#923)
 - Generate jsdocs for operations with no documentation (#971)
 - Fix missing release tag on shape members (#854)
 
0.17.1 (2023-07-07)
Bug fixes
- Fixed @smithy/protocol-http import in HttpApiKeyAuth spec (#817)
 
0.17.0 (2023-07-06)
Features
- Upgraded to Smithy 1.33.0 (#808)
 - Updated enum validator to not remove "internal" tagged members (#807)
 
Bug fixes
- Fixed @aws-smithy/server-common version (#806)
 
0.16.0 (2023-06-30)
Features
- Updated code generator to use @smithy scoped npm packages (#791, #766)
 - Improved blob payload input and output types (#777)
 - Added packageDocumentation and improved interface inheritance (#770)
 - Updated code generator to use runtime-agnostic util-stream package (#775)
 
Bug fixes
- Fixed endpoint parameter name conflict (#772)
 - Stopped trimming collection query param output values (#764)
 
0.15.0 (2023-05-10)
Features
- Add Gradle composite build (#761)
 - Improve generated command documentation (#757)
 - Bump SSDK libs version to 1.0.0-alpha.10 (#738)
 - Use aggregated client runtime generator (#736)
 - Add SerdeElision KnowledgeIndex and serde helper function (#735, #759)
 - Shorten internal serde function names (#730)
 - Reduce generated HTTP request header code (#729)
 - Improve documentation truncation (#728)
 - Export 
enumasconstto reduce generated code (#726) - Add structural hint to commmand examples (#723)
 - Skip generating unused sensitive filter functions (#722)
 - Add DefaultReadmeGenerator (#721)
 - Add TSDocs release tags (#719)
 - Add thrown exceptions to generated command documentation (#715)
 - Remove internal enum values from validation message (#713)
 - Omit aggregated client from paginators (#712)
 - Add NodeJS runtime support to SSDK (#703)
 - Remove reflected values from validation message (#695)
 - Add AddClientRuntimeConfig for generic clients (#693)
 
Bug Fixes
- Fix creating empty model files when chunking (#714)
 
0.14.0 (2023-02-09)
Features
- Upgrade TypeScript 
libto usees2018for SSDK libs (#678) - Bump SSDK libs version to 1.0.0-alpha.8 (#689)
 - Add a code generator setting to generate 
@requiredmembers without| undefined. WARNING: Using this mode may lead to backwards incompatible impact for clients when a service removes@requiredfrom a member. (#566, #688) 
0.13.0 (2023-01-31)
Features
- Upgrade tsconfig.es.json target to ES2020 (#603)
 - Upgrade to Java 17 (#621)
 - Upgrade to node >= 14.0.0 (#623, #625, #628)
 - Upgrade to Smithy 1.27.2 (#682)
 - Add mavenCentral as plugin repository (#629)
 - Add intEnum generation with validation and tests (#605, #654)
 - Use util-base64 instead of platform-based dependencies (#627, #631)
 - Use util-base8 instead of platform-based dependencies (#672, #677)
 - Add util-retry dependency (#650)
 - Replace Hash with Checksum (#668)
 - Allow deferred resolution for api key config (#588)
 - Stream improvement serde (#593)
 - Support delegation of determining errors for an operation (#598)
 - Reduce object copying in iterators (#638)
 - Refactor writeAdditionalFiles and writeAdditionalExports logic into integration.customize() (#607)
 - Expose static endpoint param instructions provider (#590)
 - Add unit tests for endpoints v2 generator (#674)
 - Use util-utf8 on server and tests ()
 - Bump ssdk lib version to 1.0.0-alpha.7(#675)
 - Clients parse datetime offsets (#681)
 
Bug Fixes
- Call parseErrorBody when parsing error structures (#597)
 - Fix broken reference to 
fail()after jest-upgrade (#645) - Validate required input query params (#647, #646)
 - Include x-amz-request-id in request id deser (#606)
 - Add idempotencyToken generation if member is queryParam (#655)
 - Fix Error printout for protocol-response tests (#657)
 - Fix codegen for windows platforms (#661)
 - Fix consistency with type aliases (#670, #671)
 - Fix misc endpoints 2.0 bugs (#592, #600, #614, #615, #616, #617, #618, #619, #622, #626, #634, #644, #652, #658)
 
0.12.0 (2022-09-19)
Features
- Migrated the code generator to use Smithy's new and recommended DirectedCodegen. (#585)
 - Added support for endpoints v2. (#586)
 - Updated Smithy version to 
1.25.xwhich bring Smithy IDL v2 support. (#589) - Updated SSDK library version to 
1.0.0-alpha6. (#583) - Added different package description for client v/s server. (#582)
 - Overrode typescript version for typedoc. (#561)
 - Removed namespaces that only contain log filters. (#574)
 - Added support for event stream for RPC protocols. (#573)
 - Added fallback to status code for unmodeled errors. (#565)
 - Added support for generating protocol specific event payload. (#554)
 - Used Record type instead of Object. (#556, #557, #558, #562)
 - Removed explicit reference to MetadataBearer from error shapes. (#545)
 - Added codegen indicator comment to generated files. (#538)
 - Added check to stop pagination on same token. (#534)
 
Bug Fixes
- Fixed code generation for server protocol tests. (#577)
 - Fixed missing Content-Type header in some events. (#567)
 
0.11.0 (2022-04-04)
Features
- Removed MetadataBearer from output type. (#530)
 - Updated Smithy version to 
1.19.x. (#531) - Updated 
typescriptto~4.6.2. (#527) - Set bodyLengthChecker type to BodyLengthCalculator. (#524)
 
Bug Fixes
- Added missing export for 
httpApiKeyAuthmiddleware. (#528) 
0.10.0 (2022-03-02)
Features
- Bumped SSDK library versions to 1.0.0-alpha5. (#520)
 - Added support for 
List<String>in function parameters list. (#516) - Updated generation of exceptions for easier handling. (#502)
 - Updated clean script to delete *.tsbuildinfo. (#514)
 
Bug Fixes
- Fixed scripts for npm by extracting run command out. (#519)
 - Fixed the generation of collections of documents in protocol tests. (#513)
 
0.9.0 (2022-02-14)
Features
- Updated Smithy version to 
1.17.x. (#505) - Added support for 
@httpApiKeyAuth. (#473) - Added a default 
prepackscript to generated packages. (#479) - Added TypeScript contextual keywords to the reserved words list. (#500)
 - Changed generated builds to run concurrently. (#498)
 - Added support for 
defaultsMode. (#495) - Updated generated packages to use 
@tsconfig/recommended. (#493) - Removed 
filterSensitiveLogfrom exceptions. (#488) - Bumped SSDK library versions to 1.0.0-alpha4. (#480)
 - Removed test dependencies and configuration from generated packages. (#483)
 - Updated minimum supported Node version to 12. (#481, #482)
 - Added option to configure package manager, supporting 
yarnandnpm. (#476) - Switched pattern validation to re2-wasm to avoid native dependency. (#467)
 
Bug Fixes
- Updated protocol tests to check for 
ErrorName. (#490) - Added escaping for regex literals in path segments. (#477)
 - Fix greedy label matching. (#474)
 
Documentation
- Updated README example. (#501)
 
0.8.0 (2021-11-23)
Features
- Updated Smithy version dependency to be more specific. (#465)
 - Updated Smithy version to 
1.14.x. (#468) 
Bug Fixes
- Fixed the generated comment for link to client config. (#466)
 
0.7.0 (2021-11-03)
Features
- Updated parsing of timestamps and unions to be stricter. (#412, #414)
 - Reduced published package size. (#427, #443, #446, #444, #452)
 - Added handling for more complex Accept header values. (#431)
 - Moved source files to 
srcfolder. (#434, #437, #438) - Added ability to ts-ignore a default import. (#445)
 - Updated Smithy version to 
1.12.0. (#448) - Switched to re2 for pattern validation. (#451)
 
Bug Fixes
- Used base64 en/decoder from context in bindings. (#419)
 - Downgraded 
typescriptto~4.3.5. (#418) - Fixed XML protocol test to compare payload with outmost node. (#433)
 - Fixed handling of multi-value query parameters to align with API Gateway behavior. (#449)
 
0.6.0 (2021-09-02)
Features
- Updated parsing of request and response payloads for Http binding protocols to be stricter. (#405)
 - Updated number parsing to be stricter based on size. (#397, #404)
 - Added handling for Content-Type and Accept headers in SSDK. (#394)
 - Added a generator for 
@httpMalformedRequestTests. (#393) - Added warning for unsupported Node.js version. (#392)
 
Bug Fixes
- Allowed setting prefix path for rpc protocols. (#406)
 - Fixed SSDK codegen for different casing of operation name, by using operation symbol name consistently. (#402)
 - Fixed processing of runtime config for generic clients. (#401)
 
0.5.0 (2021-07-23)
Features
Bug Fixes
- Update dependency versioning to pull from 
smithy-aws-typescript-codegenor uselatest. (#388)