Microsoft/TypeScript

API: incorrect declarations in types.ts

Open

#24,706 建立於 2018年6月5日

在 GitHub 查看
 (5 留言) (12 反應) (0 負責人)TypeScript (48,455 star) (6,726 fork)batch import
Breaking ChangeHelp WantedInfrastructure

描述

The --strictNullChecks PR changed some declarations in types.ts to avoid frequent assertions in the compiler's code. Unfortunately these changes make it really unsafe for API users because they no longer contain the actually nullable types: https://github.com/Microsoft/TypeScript/pull/22088#discussion_r184149465 https://github.com/Microsoft/TypeScript/pull/22088#discussion_r184155027

  • ts.Node#parent is no longer optional (which is definitely wrong for SourceFile)
  • ts.Symbol#declarations and ts.Symbol.valueDeclaration are no longer optional, but can still be undefined
  • ts.Type#symbol is no longer optional, but I guess this comment is still up to date: // Symbol associated with type (if any)

These changes should either be reverted or replaced in the published declaration files. /cc @andy-ms @weswigham

貢獻者指南

API: incorrect declarations in types.ts · Microsoft/TypeScript#24706 | Good First Issue