microsoft / microsoft/TypeScript

Feature Updates

オープン
#54,923 コメント 7 件 リアクション 50 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

Feature Update
主要言語
Go
スター
111k
フォーク
14.4k
平均マージ
1日 19時間
マージ済み PR(30日)
117

説明

Feature Updates

We're starting a new initiative called Feature Updates.

For longstanding and highly-upvoted issues, we'll be dedicating time each milestone to address these issues and deliver an update on where the feature stands in our planning. My initial goal is to issue five-ish per milestone, though possibly more or fewer might happen due to other obligations or opportunities.

Long-open issues have many problems that need addressing:

  • The community rightfully wants to know whether we intend to implement highly-upvoted issues, what potential blockers are, and what kind of feedback is needed
  • Upvotes given at one point in time may have been from people whose needs have since been met by other features, or who no longer need the feature due to the shifting JS landscape
  • The GitHub UI isn't particularly friendly when there are hundreds of comments, which is common
  • Due to this and general human avoidance of reading long threads, many comments are duplicative or off-topic
  • Even if we've posted long comments explaining the current state of things, they tend to get lost in the middle
  • Many highly-voted issues actually describe a huge range of possible functionality, e.g. "Compiler Plugins" which could mean practically anything

The goals here are to:

  • Collect scenarios and use cases, assess which have been met in the interim since the feature was first proposed, and which still make sense
  • If necessary, split up the feature into sub-features for clarity
  • "Start fresh" with new threads with fewer filler (e.g. "Me too!") comments
    • Feature Updates will be moderated more stringently; while we almost never delete comments elsewhere, in Feature Update threads, comments which don't contribute meaningfully to the presented problems will be deleted.
  • Describe current solutions, why they're not part of TypeScript yet, and discuss possible next steps forward

Our request to you in Feature Update threads is to stay focused, since they will likely garner a lot of attention and potential for noise.

Examples of constructive feedback that would be greatly appreciated:

  • Discussion of possible solutions to presented problems
  • Code examples that demonstrate where the lack of the feature is painful
  • Explanations of existing libraries with behavioral constraints that can't be represented without the feature
  • Bugs that would have been found if you had the feature
  • Opinions on presented options, preferably using the aforementioned framings

To keep thread size manageable, we'll be pruning (deleting) unconstructive comments that don't meaningfully contribute to progress. Examples of comments that may be less helpful and could potentially be removed:

  • General observations like "This has been open for X years", etc.
    • We don't prioritize the design of the language solely based on when ideas were first conceived. TypeScript has been around for a while, and most ideas have been present in one form or another for a long time.
  • Unspecific "I need this", "Me too", "This is a must-have", etc.
    • If we don't know why you need it or what you want to use it for, we can't make design progress in terms of making trade-offs, shipping a minimum viable implementation, considering alternative features which would accomplish the same thing, or predicting what kinds of feature interactions people might expect
  • Comments that suggest obvious solutions: "Why not put it behind a flag", "Do it already", "Not hard, just do what Erlang does", etc.
Requesting Feature Updates

For the foreseeable future, we'll be working off the "most-upvoted" suggestion list. Please don't post comments in issues or iteration plans asking for feature updates. Once the top suggestions have been cleared out, we might change this policy, possibly by having a survey or something.

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

この issue は、ファイル、テスト、または実装のエントリーポイントを指定するものではなく、長年存在している TypeScript の問題に対する Feature Updates イニシアチブについて説明しています。最も多く投票された提案のリストと、示されているフィードバックのガイドラインを確認してください。具体的な機能更新が選択され、そのシナリオと現在の解決策が評価され、次のステップが文書化されて初めて、作業は完了となります。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
typescript
領域
developer-experience
issue の種類
ドキュメント
難易度
5/5
見積もり時間
1週間以上
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
15/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。