Repository navigation
Conversation
|
3 tasks done
…s, names, RPC errors (stack 03/14)
This branch had an error being deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Swift client generator and runtime fixes, the counterpart of part 02.
Issue #, if available: see #711
Changes
format: dateasString.postRawRoutenow throwsRawRouteError, with the route, the status and the server's error name, for any non-2xx response. It used to read the error body as a success.main's typed results for declared native bindings (feat(swift): emit typed transferable results for declared native bindings #807: declared modules are imported, runtime names qualified asBlocksRuntime., a module shadowed by a generated name is rejected) and its generatedBlocksentry point (feat(swift): generate aBlocksentry point so oneBlocksClientserves every API #797), both of which this generator keeps: one client per spec,nonisolatedgenerated types for an app's MainActor default isolation, and a realtime result decoded in BlocksRuntime. Here the runtime decodes it with the client's decoder, so a channel message holding a date or an OIDC client decodes too. A nestedoidc/clienthydrates rather than decoding asJSONValue, and a transferable encodes back to its descriptor.What to review closely: Start with
native/swift/Sources/BlocksCodegen/. Generated-API changes for customers are listed in L55, L60 and L63; they ship as a minor.Validation
This branch passed on its own:
npm ci, with the lockfile unchanged bynpm installlint:depscheck:apichangeset-guardcheckstest:unit: 5,942 passed, 0 failedswift build, codegen and runtime tests, SwiftFormatThe full stack passed end to end on AWS, on new stacks that were destroyed afterwards: upgrade-in-place from
AuthCognito,comprehensivesandbox and production, hosting, native, and the CloudFront front door (see #711). That run was on the tree before the latest merges ofmain(#824's synth guards, #797's SwiftBlocksentry point, #834's template metadata, #835/#837's native opt-out warnings, #841, #749, #819 and dependency bumps, then #208'ssubmitAuthAction, #807's Swift typed declared-binding results, #637's config-bucket hardening and more dependency bumps); the merged tree, which part 12 is, passed every local gate, including the native suites and the Swift e2e against a local backend.Checklist
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.