build: raise monorepo TypeScript floor to 5.2#1014
Open
michaelgiraldo wants to merge 3 commits into
Open
Conversation
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.
Summary
Raises the monorepo TypeScript/Jest tooling floor to TypeScript 5.2 and removes the need to rely on a temporary
Disposablecompatibility bridge for newergraphql-toolstype declarations.Why
The repo's previous TypeScript floor was older than the standard library support assumed by newer upstream dependencies. In particular, newer
graphql-toolsdeclarations reference the standardDisposable/AsyncDisposableglobals introduced in TypeScript 5.2.Changes
Disposablecompatibility shim by moving the repo to a toolchain that natively understands those globalsamplify-codegen,graphql-generator,graphql-types-generator,graphql-docs-generator,appsync-modelgen-plugin, and the e2e packagesNon-goals
Validation
Validation on this stacked branch completed locally:
npx -y yarn@1.22.22 lintnpx -y yarn@1.22.22 buildnpx -y yarn@1.22.22 jest --runInBandnpx -y yarn@1.22.22 workspace @aws-amplify/graphql-types-generator test --runInBandnpx -y yarn@1.22.22 workspace @aws-amplify/amplify-codegen-e2e-core buildAWS-backed PR/e2e workflows were not run locally in this environment. This repo appears to validate that layer through the existing CodeBuild PR workflow, so maintainer/CI validation is still requested for the cloud-backed checks.
Maintainer Context
This PR is intentionally stacked on #1013.
The repo-wide TypeScript/Jest toolchain migration in this PR does not currently build cleanly on
mainwithout theappsync-modelgen-pluginscalar-map and visitor updates from #1013. Because of that dependency, this PR is being proposed as the next layer on top of #1013 rather than as an independently mergeable branch today.If #1013 is merged first, I can respin this PR onto the updated
mainso the diff shows only the toolchain changes.Maintainer Ask
Please review this as the stacked repo-wide toolchain follow-up to #1013. Local lint/build/unit coverage is green on this branch; cloud-backed PR validation is still requested through the existing PR workflow / CodeBuild path.