CARVIEW |
Select Language
HTTP/2 200
date: Mon, 21 Jul 2025 19:08:31 GMT
content-type: text/html; charset=utf-8
cache-control: max-age=0, private, must-revalidate
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
link: ; rel=preload; as=fetch; crossorigin=use-credentials
referrer-policy: no-referrer-when-downgrade
server-timing: issue_layout-fragment;desc="issue_layout fragment";dur=269.838389,issue_conversation_content-fragment;desc="issue_conversation_content fragment";dur=688.296763,issue_conversation_sidebar-fragment;desc="issue_conversation_sidebar fragment";dur=60.58347,nginx;desc="NGINX";dur=1.08418,glb;desc="GLB";dur=94.896252
strict-transport-security: max-age=31536000; includeSubdomains; preload
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With, Accept,Accept-Encoding, Accept, X-Requested-With
x-content-type-options: nosniff
x-frame-options: deny
x-voltron-version: fd8fbbc
x-xss-protection: 0
server: github.com
content-encoding: gzip
accept-ranges: bytes
set-cookie: _gh_sess=r0aSrMwK%2FZ363N6pCP6MoUh91O2zNcbF%2FSdi%2FIi7rj%2Be%2BObTTTiQXtTCTTlU9WmCN1iwUOiG4kS7QuFF2rjjlE6f44qxd%2FHUkMH2heBt4elkBdZl8760OM5MNyBUootNG39DGZ9B4FVAIIVAfO2Kk1NPlHCLUCCPOSOBSl%2B6hAqajzXwPuhCu9qnGcQrhMrw5ZKwxA9PAkPQ%2FYm1JKi44Wqw16N4NnGz6asLBXGKPv%2FM%2FY5OP4dkzHdcva42Zcp1pDVoA4oXnTaSp11Zr%2FBHCg%3D%3D--HjXHkCcB0VtDD%2Blw--xLJ8b89kdbFGeptTd12c8w%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.832892240.1753124910; Path=/; Domain=github.com; Expires=Tue, 21 Jul 2026 19:08:30 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Tue, 21 Jul 2026 19:08:30 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: C0F2:2AFEEF:27F541:2FBE1B:687E902E
TypeScript 3.5 Iteration Plan Β· Issue #30555 Β· microsoft/TypeScript Β· GitHub

No one assignedNo typeNo projectsNo milestoneNone yetNo branches or pull requests
Skip to content
Navigation Menu
{{ message }}
-
Notifications
You must be signed in to change notification settings - Fork 12.9k
Closed
Labels
PlanningIteration plans and roadmappingIteration plans and roadmapping
Description
This document outlines our focused tasks for TypeScript 3.5, as well as some of the discussion that explains how/why we prioritized certain work items. Nothing is set in stone, but we will strive to complete them in a reasonable timeframe.
Dates
Here's the release plan.
- May 10th: Create a
release-3.5
branch, and update the version to3.5.0-rc
.master
is locked from receiving new feature-work that is not 3.5-bound.- Start a build of TypeScript for Visual Studio for our remote testing team.
- May 15th: Last day to adjust the
release-3.5
branch with any feedback we receive.- Kick off a final Visual Studio build if necessary.
- (2pm Pacific) Produce an insiders release for VS Code.
- Morning of May 16th: The release candidate goes out.
- May 24th: Merge
master
intorelease-3.5
one last time, finalize the version as3.5.1
.master
is unlocked. Critical changes for 3.5 must be ported in.- Start a build of TypeScript for Visual Studio for our remote testing team.
- May 29th: Last day to adjust the
release-3.5
branch with any feedback we receive.- Kick off a final Visual Studio build if necessary.
- (2pm Pacific) Produce an insiders release for VS Code which is identical to the final release.
- May 30th: Announcing TypeScript 3.5 π
Work Items
Expected Work Items
- Language
- Compiler
- Anticipated
--incremental
fixes and improvements -
--declaration
and--allowJs
-
--declaration
and--isolatedModules
- APIs for
--incremental
and composite projects (--build
mode) π - Investigate TypeScript plugin APIs π
- Anticipated
- Language Service
- Infrastructure
- Automated testing infrastructure for language service on real world code ππ»β
- Migrate to ESLint ππ»β
(ππ»β means work has already started)
Deferred Work Items
Planning Meeting Notes
Motivations
- Goals and current 6-month roadmap
- GitHub user feedback (πs)
- Feedback from customer interviews and social media.
- Visual Studio and Visual Studio Code feedback and new functionality demands
- Actionable PRs (need to make a call)
- Bug backlog
General (compiler/infrastructure/reliability)
-
Negated types
- Rationale: Core type system
- Uses: control flow analysis on generic/"higher order" types
- Problems: But you end up with lots of vacuous intersections that are "garbage" types.
- Will likely lead to a tail of bugs, at least initially
- Action item: need to prototype, see what sort of breakage we see with implementations of integration with control-flow analysis, and see what the perf impact is.
- β Work on this.
-
Arbitrary index signatures
- Rationale: Core type system
- Not a must for negated types
- But like to get them done first.
- Also need a unifying concept between them and mapped object types.
- Resolution: Defer
-
Compiler API prototyping
- Rationale: minification, 3rd party tools integration
- In progress
- β
-
Expecting
--incremental
build issues- Rationale: Stability, scaling, performance
- β
-
Crawler work for testing TSServer
- Rationale: Stability
- Context:
- IntelliCode team crawls public code to train on, but leverages TSServer.
- Turns out that it was a great way to test TSServer and catch bugs!
- We want to leverage it to get a good litmus that it's stable.
- Give partner teams assurance that they can adopt nightly TypeScripts.
- β
-
TSLint -> ESLint migration
- Internal engineering
- β
-
New engineer starting!
- Ramping-up bugs
- Website
- Education and UX
- β
-
globalThis
-related work- Bug and standards involvement
- Issues with block-scoped declarations interfacing with the global object.
- β
-
--declaration
with--allowJs
- TypeScript beyond TypeScript
- β π
-
--declaration
with--isolatedModules
- User demand
- Aside: Ensure this all works with
composite
. - Resolution: investigate
Productivity
- Smart Select API
- TSServer: Smart select APIΒ #29071
- VS Code ask, but generally applicable editor integration
- β
- Sorted/prioritized completions
- favor local types and values in autocomplete popup over ambients declarationΒ #15024
- Editor quality improvements
- This and smart select have been around for long enough that they get priority.
- β
- Extract type refactoring
- Suggestion: Refactor extract to type alias/typedefΒ #23869
- Shouldn't it just always work?
<T>(x: T): { value: T }
- It has all the same problems as extract method!
- Well you don't have to worry about control flow.
- Could just do this for non-generic types for the minimal-viable product (MVP).
- Resolution: try to get done for 3.5. β
- Call hierarchy breadcrumbs
- Feature request: Call HierarchyΒ vscode#16110
- VS Code ask, but generally applicable editor integration
- Resolution: Probably will defer to next version.
j-oliveras, sean-vieira, zpdDG4gta8XKpMCd, elektronik2k5, avsorokin and 49 morej-oliveras, zpdDG4gta8XKpMCd, niieani, Bnaya, trotyl and 12 morej-oliveras, sean-vieira, zpdDG4gta8XKpMCd, Bnaya, trotyl and 18 morej-oliveras, zpdDG4gta8XKpMCd, niieani, Bnaya, trotyl and 7 moreBnaya, xiaoxiangmoe, vkrol, j-oliveras, luthfianto and 2 more
Metadata
Metadata
Assignees
Labels
PlanningIteration plans and roadmappingIteration plans and roadmapping
Type
Projects
Milestone
Relationships
Development
Issue actions
You canβt perform that action at this time.