FlashcardsRecall, then flip

Print · TypeScript 5.8-7.0

Back to study

24 cards · 3 sheets · 6 pages.

Print double-sided, flipping on the long edge, at 100% scale with no margins added by the browser. Answer columns are already mirrored, so each answer lands on the back of its own question. Cut along the dashed lines.

Preview

TypeScript 5.8-7.0 flashcards — questions (cards 1-8)Print double-sided, flip on long edge, cut along dashed lines
CARD 1 · QUESTION

When did TypeScript 5.8, 5.9, 6.0 and 7.0 ship?

CARD 2 · QUESTION

What is TypeScript 7.0, and why is it a landmark release?

CARD 3 · QUESTION

Is TypeScript 7 a new language or type system?

CARD 4 · QUESTION

How does TypeScript 7 use multiple cores?

CARD 5 · QUESTION

What happened to tsc's watch mode and editor support in 7.0?

CARD 6 · QUESTION

Which tsconfig defaults changed on the way to 7.0?

CARD 7 · QUESTION

Why does "types": [] as a default break so many projects?

CARD 8 · QUESTION

What did TypeScript 6.0 deprecate?

TypeScript 5.8-7.0 flashcards — answers (cards 1-8)Columns mirrored so answers align with question backs
CARD 2 · ANSWER

It is the compiler and language service ported from JavaScript to Go, released 8 Jul 2026. Microsoft measured 7.7x-11.9x faster builds on real codebases with 6-26% lower memory use. id: 93a025f0-b6df-4153-8773-53d6f611032f

CARD 1 · ANSWER

5.8 on 28 Feb 2025, 5.9 on 1 Aug 2025, 6.0 on 23 Mar 2026 and 7.0 on 8 Jul 2026. The 5.x line ran on a roughly 3-month cadence; 6.0 and 7.0 arrived four months apart in 2026. id: 1a9f8837-47fd-4a22-8801-273a713f4749

CARD 4 · ANSWER

New --checkers flag (default 4) runs type-checking across parallel workers and --builders parallelises project-reference builds; --singleThreaded turns parallelism off. id: 3ce72215-5be1-46f8-9319-49ceb655f045

CARD 3 · ANSWER

No - it is a port, not a redesign. The syntax, type system and checking semantics are the same as 6.0; what changed is the implementation, the supported config surface and the tooling around it. id: c5641be1-503d-4cda-b1df-cd6213ada69e

CARD 6 · ANSWER

strict is now true, module defaults to esnext, target to es2025 (6.0), rootDir to the tsconfig's own directory, and types to an empty array. id: f39d0975-4ad7-4cf5-adf3-fa923cf30460

CARD 5 · ANSWER

--watch was rebuilt on a Go port of Parcel's file watcher, and the language server was rewritten on LSP - over 80% fewer failing commands and 60% fewer server crashes than 6.0. id: 19cff139-825b-4f1c-8cd9-132385e4d551

CARD 8 · ANSWER

target es5, downlevelIteration, moduleResolution node10 and classic, module amd/umd/system/none, baseUrl, outFile, esModuleInterop false, legacy module namespace syntax and import assert. id: 33dc3048-438d-46ff-b841-8da90696bcf5

CARD 7 · ANSWER

Previously every package under node_modules/@types was auto-included. Now you must list them explicitly, e.g. "types": ["node"], or globals like process and __dirname stop resolving. id: 0d3a8992-5664-412a-beda-511caf888e3c

TypeScript 5.8-7.0 flashcards — questions (cards 9-16)Print double-sided, flip on long edge, cut along dashed lines
CARD 9 · QUESTION

What does "ignoreDeprecations": "6.0" do?

CARD 10 · QUESTION

Why did TypeScript 6.0 exist at all?

CARD 11 · QUESTION

Which options are gone for good in TypeScript 7.0?

CARD 12 · QUESTION

How did TypeScript 7 change checking of plain JavaScript files?

CARD 13 · QUESTION

Can Vue, Svelte, Angular, Astro or MDX use TypeScript 7 today?

CARD 14 · QUESTION

What was tsgo, and what does TypeScript 7 ship as now?

CARD 15 · QUESTION

How do you run TypeScript 6 and 7 side by side?

CARD 16 · QUESTION

What is planned for TypeScript 7.1, and when?

TypeScript 5.8-7.0 flashcards — answers (cards 9-16)Columns mirrored so answers align with question backs
CARD 10 · ANSWER

It is the bridge release: the last JavaScript-based compiler, whose job was to surface 7.0's breaking changes as deprecations while you were still on the familiar codebase. id: 67c35cf7-9d5f-43f9-bc8e-2ec358fcfcf9

CARD 9 · ANSWER

It downgrades 6.0's deprecation errors back to warnings so a project can keep building on the old options - an escape hatch for migration, not a long-term setting, since 7.0 removes them outright. id: 04e9a4ea-7122-4511-8789-2eefe56af5bb

CARD 12 · ANSWER

JS support was tightened to match TS rules: values can no longer stand in for types, Closure-style annotations are no longer recognised, and postfix ! is unsupported. id: 5299219e-b8dc-4ba5-888a-bfbd8d32de2e

CARD 11 · ANSWER

target es5 and downlevelIteration, moduleResolution node10/classic, module amd/umd/systemjs/none, baseUrl, and esModuleInterop or allowSyntheticDefaultImports set to false. id: d9bd7254-8f89-4cc3-82e0-84651025c365

CARD 14 · ANSWER

tsgo was the preview executable in the @typescript/native-preview package. Stable 7.0 ships in the normal typescript package and is invoked as tsc. id: 94de8bec-36b1-4514-9c6a-48a8d5f7ea63

CARD 13 · ANSWER

Not yet. Embedded-language tooling depends on the compiler API, which is only stabilised in 7.1 - until then those frameworks stay on the 6.0 toolchain. id: a4727286-ba89-414a-8c17-aac9ce14d717

CARD 16 · ANSWER

Per the published iteration plan: beta 9 Sep 2026, RC 20 Oct, stable 10 Nov 2026. Headline item is the stable programmatic API, plus ES2026 lib/target and type on import attributes. id: 42b50981-9920-4870-ba9e-fb1b68218d10

CARD 15 · ANSWER

Install the @typescript/typescript6 compatibility package, which lets both compilers coexist without name collisions while you migrate parts of a repo. id: 14ce4da3-676e-46d0-b2d2-429a5098d129

TypeScript 5.8-7.0 flashcards — questions (cards 17-24)Print double-sided, flip on long edge, cut along dashed lines
CARD 17 · QUESTION

Why does the missing programmatic API in 7.0 matter?

CARD 18 · QUESTION

What release cadence has the team signalled after 7.0?

CARD 19 · QUESTION

What is import defer, added in 5.9?

CARD 20 · QUESTION

Why did 5.9 add --module node20 when nodenext exists?

CARD 21 · QUESTION

What else did 5.9 bring to everyday DX?

CARD 22 · QUESTION

What is --erasableSyntaxOnly (5.8) for?

CARD 23 · QUESTION

What return-type bug did 5.8 start catching?

CARD 24 · QUESTION

What did 5.8 change about requiring ESM?

TypeScript 5.8-7.0 flashcards — answers (cards 17-24)Columns mirrored so answers align with question backs
CARD 18 · ANSWER

A return to the pre-7.0 rhythm: featureful releases roughly every 3-4 months. id: d805fc6e-8fdb-45a2-b5ca-f42115292ecf

CARD 17 · ANSWER

Everything built on the old JS compiler API - typed ESLint rules, ts-jest, bundler plugins, framework language tooling - cannot target the Go compiler until 7.1 stabilises that API. id: cadcffef-ab0d-4672-93b4-11d139a00262

CARD 20 · ANSWER

nodenext floats: its behaviour shifts as Node evolves. node20 pins the semantics of Node 20 so builds stay reproducible, exactly as node18 did in 5.8. id: c2e93e14-6681-4bfa-a073-3bbaf2aef407

CARD 19 · ANSWER

Syntax like import defer * as ns from "./m" loads a module but delays evaluating it until one of its exports is actually touched - a startup-cost optimisation. 5.9 added the type-checking for it. id: 007ee4bd-0a15-4966-af4b-3afac5e73e63

CARD 22 · ANSWER

It errors on TypeScript constructs that emit runtime code - enums, namespaces, parameter properties - so the file is valid under Node's type-stripping, where types are simply erased. id: b4dad803-a465-4944-8c30-6bcf09740a42

CARD 21 · ANSWER

A much leaner, more prescriptive tsc --init output, MDN-sourced summaries on DOM APIs, and expandable +/- quick-info hovers with a configurable length limit. id: ba71b7d6-4194-48cc-8f50-ff0154573852

CARD 24 · ANSWER

Under --module nodenext, require() of an ES module is allowed, matching Node 22. The new --module node18 keeps the older rules for projects still on Node 18.

CARD 23 · ANSWER

For a conditional expression in a return statement, each branch is now checked against the declared return type, instead of only the union-ed result. id: a2d80053-92da-48a3-b265-6546c25690a7