Definitelytyped: META-TypeScriptの最小バヌゞョンを曎新しおいたす

䜜成日 2019幎10月31日  Â·  39コメント  Â·  ゜ヌス: DefinitelyTyped/DefinitelyTyped

DTでサポヌトされおいる最小のTypeScriptバヌゞョンを2.0から2.8に移行するこずを怜蚎しおいたす。

これを行う理由

  • 条件付きタむプなどの䞀般的な2.8機胜を䜿甚するための摩擊を枛らしたす
  • 少数のバックバヌゞョンをテストするため、CI時間が倧幅に短瞮されたす
  • 圌らはおそらくそもそも倉曎を奜たないので、TSの叀いバヌゞョンの人々のタむピングチャヌンを枛らしたす

朜圚的なリスクず結果

  • 2.7の開発者は、自動型取埗によっお今日䜜成されたDTパッケヌゞを䜿甚できたせんが、ずにかく機胜する可胜性が非垞に高くなりたす珟圚のパッケヌゞの玄60は2.0互換です

    • TS開発者はずにかくそれを詊すこずができ、2.8以䞊の最小バヌゞョンで開発を開始する新しいパッケヌゞのために、すでにある皋床この状態になっおいたす

    • JS開発者には、新しいJSLSにアップグレヌドしない本圓の理由はありたせん。

デヌタ

  • テレメトリは、VS Codeナヌザヌの99.9が3.0以降であるこずを瀺しおいたす
  • テレメトリは、VSナヌザヌの97が3.0以降を䜿甚しおいるこずを瀺しおいたす
  • DTパッケヌゞの20はすでに2.8以降にオプトむンしおいたす

フィヌドバック

最も参考になるコメント

@sandersn 、これがこの問題に぀いおの私の考えです

  • TypeScriptバヌゞョンには保守終了EOLが必芁ですか
    もちろんはい。 䜜成されたすべおのTypeScriptバヌゞョンをサポヌトするには、䜙分なリ゜ヌスが必芁です。
  • なぜEOLスケゞュヌルが必芁なのですか
    _ベストプラクティスは、プロゞェクトの状態を前もっお明確にするこずです。 プロゞェクトをサポヌトしなくなった堎合、たたはプロゞェクトを終了する過皋にある堎合は、コヌドに遭遇する可胜性のある人にそれを痛々しいほど明癜にしおください_ c JaredSmith。
  • スケゞュヌルのベヌスずしお䜕を䜿甚する必芁がありたすか
    分析 分析に基づくすべおの決定は劥協です。 そのような決定はすべお、コミュニティ/ビゞネスのどの郚分をからかうかずいう質問に察する答えです。 WordPressにも同様の問題があり、WP / PHP/MySQLの最小バヌゞョンでサポヌトする必芁がありたす。 危険な方法です。
    䟝存するツヌルスケゞュヌル Visual Code / Microsoft Azure/Angularなど。 遞択肢が倚すぎお簡単すぎお、新しい聖戊を始めるこずができたせん。
    TC39プロセス 良いオプションですが、TC39はどの蚀語機胜にもEoLを導入したせんし、導入したせん。
    Node.js Node.jsは、リリヌス/EOLスケゞュヌルを持぀JSコミュニティのドラむバヌです。 TypeScriptはNode.jsを䜿甚したす。 これがスケゞュヌルの最良のベヌスだず思いたす。
  • スケゞュヌルはどのように䜜成したすか
    オプション1.TypeScriptバヌゞョンをNode.jsバヌゞョンに関連付け、同様のEOLをアナりンスしたす。 たずえば、2幎前にNode.js v8がLTSを開始し、 TypeScript v2.6がリリヌスされたため、2019.12.31はEOLです。
    オプション2Node.jsには、EOLの前に12+18か月のポリシヌがありたす。 同じアプロヌチ、2。5幎を䜿甚できたす。 長すぎるこずもありたすが、2幎以䞊です。
    オプション3意思決定者ずミヌティングを行い、コミュニティの結果をそのたた共有したす

したがっお、私の提案は次のようになりたす。

バヌゞョン| リリヌス枈み| 2。5幎で寿呜を迎える| 2幎で寿呜を迎える
-| -| -| -
2.1 | 2016幎12月| 2019幎6月| 2018幎12月
2.2 | 2017幎2月| 2019幎8月| 2019幎2月
2.3 | 2017幎4月| 2019幎9月| 2019幎4月
2.4 | 2017幎6月| 2019幎11月| 2019幎6月
2.5 | 2017幎8月| 2020幎1月| 2019幎8月
2.6 | 2017幎10月| 2020幎3月| 2019幎10月
2.7 | 2018幎1月| 2020幎7月| 2020幎1月
2.8 | 2018幎3月| 2020幎8月| 2020幎2月
2.9 | 2018幎5月| 2020幎10月| 2020幎4月
3 | 2018幎7月| 2020幎12月| 2020幎6月
3.1 | 2018幎9月| 2021幎3月| 2020幎8月
3.2 | 2018幎11月| 2021幎5月| 2020幎10月
3.3 | 2019幎1月| 2021幎7月| 2020幎12月
3.4 | 2019幎3月| 2021幎8月| 2021幎2月
3.5 | 2019幎5月| 2021幎10月| 2021幎4月
3.6 | 2019幎8月| 2022幎1月| 2021幎7月
3.7 | 2019幎11月| 2022幎5月| 2021幎10月

党おのコメント39件

unknown远加されたしたか 倧きくなるか、家に垰りたす DTのすべおのanyは、これらの郚分の「typescriptshouldaがそれを捕たえた」バグの最倧の原因です。

unknown远加されたしたか

3.0

君。 ぀たり、99.9

私たちはこれを行うべきであるこずに同意したす。 これをやろう

代わりに、時間をかけおゆっくりず増やしおもらえたすか 2.1ある月、2.2次の月、ずいうように

各バヌゞョンには、いく぀かの小さな倉曎がありたす。 最初はゆっくりず敎然ず進むこずで、これがどのような問題を匕き起こすのかを理解しやすくなりたす。

メンテナンスモヌドのプロゞェクトには、特にむンフラストラクチャのコアである堎合、これらの重倧な倉曎を克服するための垯域幅がないこずがよくありたす。

はい、お願いしたす。特にnodeのタむピングは、新しい機胜の欠劂に悩たされおおり、倚くの〜ハック〜回避策を䜿甚する必芁がありたした。

メンテナンスモヌドの@JoshuaKGoldbergプロゞェクトは、月ごずにタむプ定矩のバヌゞョンをアップグレヌドする可胜性は䜎いですよね

@JoshuaKGoldbergは、DTをアップグレヌドしおも、すでにnpmに公開されおいる履歎タむプ定矩は削陀されないこずを芚えおおいおください。 @types歎史的なバヌゞョンは、Mumm-Raのように氞遠に生きおいたす。

DTがバヌゞョン管理に関しおどこに行くかに関係なく、それらに䟝存するこずができたす。

理にかなっおいる

こんにちは@RyanCavanaugh 、
私はそのような考えを100支持したす。 TypeScript v2.0は、 nodeを含む倚くのパッケヌゞのより良い型システムのためのブロッカヌです。
私はコミュニティずビゞネスの透明性ず予枬可胜性に関心がありたす。 質問がありたす

  • サポヌトされおいる最小のTypeScriptバヌゞョンを倉曎するのに適した時期はい぀だず思いたすか TS 3.7のリリヌス䞭
  • 間違っおいる堎合は蚂正しおください。ただし、これは2.8より前のTypeScriptバヌゞョンのサポヌト終了のように芋えたすか
  • Node.jsず同様のスケゞュヌルを蚭定できたすか このようなドキュメントは、開発チヌムがビゞネスを掚進しお曎新甚の開発リ゜ヌスを承認するのに圹立ちたす。

2.8であり、別のバヌゞョンではない理由は䜕ですか 䟋 unknownの堎合は3.0

2.8は条件付きタむプが導入されたずきです

非垞に賛成です。

その間、コミュニティが時間の経過ずずもに予想どおりに増加する最小バヌゞョンを信頌できるように、半正匏なスケゞュヌルを蚭定するこずを怜蚎しおください。 たずえば、「毎幎11月に、typescriptの最小バヌゞョンを18か月前のリリヌスに曎新する予定です。それに応じお蚈画しおください。」

@donaldpipowitch
3.0より前のナヌザヌのうち、ただ2.8を䜿甚しおいるナヌザヌのクラスタヌが芋られたした。 そしおもちろん、 @ IllusionMHが指摘しおいるように、条件付き型は2.8をDT型の䞀般的なタヌゲットにしたす。

人々がアップグレヌドし続けるこずを望んでいるので、私たちは定期的にこの問題を再怜蚎するこずを期埅しおいたす。

@galkin
技術的には、Typescriptの叀いバヌゞョンはたったくサヌビスされおおらず、この倉曎はDefinitelyTypedからのサヌビスの停止です。 そしおもちろん、Typescriptの叀いバヌゞョンは、DTパッケヌゞの既存のバヌゞョンを匕き続き取埗できたす。 圌らはただ曎新を取埗したせん。

ただし、これは単なる技術です。 LTSのようなスケゞュヌルを䜜成するこずをお勧めしたす。 しかし、私たちはただそのようなこずを始めおいたせん。 この堎合、デヌタは事埌の決定を容易にするのに十分明確でした。 将来の非掚奚の適切な日付を予枬する方法はただわかりたせん。

Re日付ずにかく3.7のDTむンフラストラクチャを曎新する必芁があるため、リリヌスの䞀郚ずしお3.7のリリヌス日に行われたす。

LTSのようなスケゞュヌルを䜜成するこずをお勧めしたす。

ただ゚コヌしたかったのですが、この皮のスケゞュヌルは本圓に確かなアむデアだず思いたす。

@johnnyreilly私たちはMicrosoftの前䟋を探しおいたす。 確かにタむプされたもののようなものはありたせん

@RyanCavanaugh 、曎新はありたすか

@galkin廃止予定が提案されおいる堎合は、このスレッドに投皿しおください。話し合いたす。

@sandersn 、これがこの問題に぀いおの私の考えです

  • TypeScriptバヌゞョンには保守終了EOLが必芁ですか
    もちろんはい。 䜜成されたすべおのTypeScriptバヌゞョンをサポヌトするには、䜙分なリ゜ヌスが必芁です。
  • なぜEOLスケゞュヌルが必芁なのですか
    _ベストプラクティスは、プロゞェクトの状態を前もっお明確にするこずです。 プロゞェクトをサポヌトしなくなった堎合、たたはプロゞェクトを終了する過皋にある堎合は、コヌドに遭遇する可胜性のある人にそれを痛々しいほど明癜にしおください_ c JaredSmith。
  • スケゞュヌルのベヌスずしお䜕を䜿甚する必芁がありたすか
    分析 分析に基づくすべおの決定は劥協です。 そのような決定はすべお、コミュニティ/ビゞネスのどの郚分をからかうかずいう質問に察する答えです。 WordPressにも同様の問題があり、WP / PHP/MySQLの最小バヌゞョンでサポヌトする必芁がありたす。 危険な方法です。
    䟝存するツヌルスケゞュヌル Visual Code / Microsoft Azure/Angularなど。 遞択肢が倚すぎお簡単すぎお、新しい聖戊を始めるこずができたせん。
    TC39プロセス 良いオプションですが、TC39はどの蚀語機胜にもEoLを導入したせんし、導入したせん。
    Node.js Node.jsは、リリヌス/EOLスケゞュヌルを持぀JSコミュニティのドラむバヌです。 TypeScriptはNode.jsを䜿甚したす。 これがスケゞュヌルの最良のベヌスだず思いたす。
  • スケゞュヌルはどのように䜜成したすか
    オプション1.TypeScriptバヌゞョンをNode.jsバヌゞョンに関連付け、同様のEOLをアナりンスしたす。 たずえば、2幎前にNode.js v8がLTSを開始し、 TypeScript v2.6がリリヌスされたため、2019.12.31はEOLです。
    オプション2Node.jsには、EOLの前に12+18か月のポリシヌがありたす。 同じアプロヌチ、2。5幎を䜿甚できたす。 長すぎるこずもありたすが、2幎以䞊です。
    オプション3意思決定者ずミヌティングを行い、コミュニティの結果をそのたた共有したす

したがっお、私の提案は次のようになりたす。

バヌゞョン| リリヌス枈み| 2。5幎で寿呜を迎える| 2幎で寿呜を迎える
-| -| -| -
2.1 | 2016幎12月| 2019幎6月| 2018幎12月
2.2 | 2017幎2月| 2019幎8月| 2019幎2月
2.3 | 2017幎4月| 2019幎9月| 2019幎4月
2.4 | 2017幎6月| 2019幎11月| 2019幎6月
2.5 | 2017幎8月| 2020幎1月| 2019幎8月
2.6 | 2017幎10月| 2020幎3月| 2019幎10月
2.7 | 2018幎1月| 2020幎7月| 2020幎1月
2.8 | 2018幎3月| 2020幎8月| 2020幎2月
2.9 | 2018幎5月| 2020幎10月| 2020幎4月
3 | 2018幎7月| 2020幎12月| 2020幎6月
3.1 | 2018幎9月| 2021幎3月| 2020幎8月
3.2 | 2018幎11月| 2021幎5月| 2020幎10月
3.3 | 2019幎1月| 2021幎7月| 2020幎12月
3.4 | 2019幎3月| 2021幎8月| 2021幎2月
3.5 | 2019幎5月| 2021幎10月| 2021幎4月
3.6 | 2019幎8月| 2022幎1月| 2021幎7月
3.7 | 2019幎11月| 2022幎5月| 2021幎10月

うわヌ、これはすごい あなたがこれに入れた考えをありがずう。

いく぀かの小さなポむント

  1. 間違いなくTypedずTypescriptは異なるプロゞェクトですが、EOLスケゞュヌルは同じである必芁がありたす。
  2. DTのEOLの意味は䞊に瀺されおいたすが、TSの堎合はそれほど明確ではありたせん。 私の知る限り、パッチバヌゞョンを耇数のマむナヌバヌゞョンで䜜成したこずはありたせん。 䞀方、䞀般的な適切な方法ずしお、たたは特定の回避策を陀いお、新しいバヌゞョンのTSを人々に掚奚しおいたせん。
  3. TSは、サポヌト契玄のある有料補品であるVisual Studioの䞀郚ずしお出荷されるため、オヌプン゜ヌスのサポヌト期間が定矩されおいる堎合は、VS固有の拡匵機胜を定矩する必芁がありたす。 ただし、これはオヌプン゜ヌスコミュニティに圱響を䞎えるべきではありたせん。

@DanielRosenwasser時間があれば、これを芋およろしいですか

2.8が新しい最小倀になりたした。 2.0-2.7はテストされなくなり、ts2.0-ts2.7タグは既存の@types/*パッケヌゞで曎新されなくなりたす。 @types/*@latestをむンストヌルする2.8より前のナヌザヌは、自分で機胜しないタむプを取埗する可胜性がありたす。

進行䞭の議論があるので、私はこの問題を閉じる぀もりはありたせんそしおそれは他にメタ問題ですか。

@sandersnは、䟝存関係がそれ以䞊であるこずを通垞確認するチェックたずえば、任意のパッケヌゞx =1の別のパッケヌゞを参照するx>1の2.xバヌゞョンが無効になったこずを意味したすか

それがノヌドタむピングを前進させるこずの䞻芁なブロックであるため、質問したす。

@SimonSchickいいえ、無効になっおいたせん。 >=2.8を必芁ずするヘッダヌにのみ適甚されたす。

぀たり、 @types/nodeを曎新しお3.1を芁求するこずはできたせん。これは、2.8たたは2.4を指定するパッケヌゞがたくさんあるためです。これは2.8ずしお扱われたす。 しかし、あなたは間違いなく@types/nodeに2.8を芁求させるこずができたす。 ぀たり、条件付きタむプを䜿甚でき、叀いバヌゞョンずは異なる堎合は2.8以降のセマンティクスが適甚されるず想定できたす。

実際、デフォルトは2.8であるため、ヘッダヌに必須バヌゞョンがたったくないこずは、2.8が必芁であるこずず同じです。

@sandersn 、最小バヌゞョンの新しいアップデヌトに぀いお話しおもらえたすか 3.8がリリヌスされたのでいい時期だず思いたす。

私たちはそれを瀟内で議論しおおり、ノヌドスタむルの30か月のスケゞュヌルをサポヌトするこずに傟倒しおいたす。 しかし、私はTypescript-VS統合チヌムず調敎する必芁がありたす。Typescript-VS統合チヌムは、new-TS-in-old-VSのサポヌトタむムラむンを持ちたいので、ただ議論を再開しようずはしおいたせん。 最終的に30か月になるず、次の非掚奚は8月になるので、少し時間がありたす。

曎新私はVSでTypescript-Javascriptチヌムず話をしたしたが、圌らは2幎たたは2。5幎のスケゞュヌルを決定したした。 圌らは、2぀のどちらかを決定するのに圹立぀いく぀かの䜿甚状況デヌタを収集する予定です。 私も圌らのシナリオを逆行させたした-それはold-TS-in-new-VSのサポヌトです。

以前に収集した䜿甚状況デヌタ[1]に基づくず、メンテナンスの負担を軜枛するために、2幎間のりィンドりを䜿甚するこずをお勧めしたす。 たた、䟝存関係を曎新するこずなく、重芁なパッケヌゞが6か月早く新機胜の䜿甚を開始できるようにしたす。 短いサポヌトりィンドりには、これたでに芋たような実甚的な欠点はありたせん。

ただし、ノヌドのスケゞュヌルにより、代わりに2。5幎のりィンドりが期埅される堎合がありたす。 長いりィンドりの他の利点はありたすか 私が芋逃しおいるデメリットは

[1]
䞊から転茉したデヌタ

  • テレメトリは、VS Codeナヌザヌの99.9が3.0以降であるこずを瀺しおいたす
  • テレメトリは、VSナヌザヌの97が3.0以降を䜿甚しおいるこずを瀺しおいたす
  • DTパッケヌゞの20はすでに2.8以降にオプトむンしおいたす

私は短いりィンドりを奜みたす。 メンテナンスの負担を軜枛する理由ず、@sandersnで明らかにしたデヌタの䞡方を理由に。

曎新しおいただきありがずうございたす

たた、短いりィンドりの堎合。

長いりィンドりは、䟝存関係の䞀郚のみを曎新し、タむプスクリプトは曎新しないものにのみ利益をもたらしたす。これは、非垞に小さなグルヌプにすぎないはずです。
ほずんどの堎合、人々はすべおの䟝存関係typescriptを含むを定期的に曎新するか、たったく曎新したせん。
たたはその逆2幎間TypeScriptを曎新するこずを気にしないほずんどの開発者は、おそらく新しいパッケヌゞず新しい型定矩をたったく気にしたせん。
したがっお、これはおそらくあなたが疑っおいるよりもはるかに少ない人々を傷぀けるでしょう-そしおそれは生態系党䜓が進化するのを防ぎたす。

TL; DR; @sandersn 、18か月に぀いおどう思いたすか

私の考え

私が曞いた

オプション2Node.jsには、EOLの前に12+18か月のポリシヌがありたす。 同じアプロヌチ、2。5幎を䜿甚できたす。 長すぎるこずもありたすが、2幎以䞊です。

でも、なぜ2幎がいい時期だず思ったのか思い出せたせん。 この2幎間を論理的に立蚌するこずはできたせん。 さお、新鮮な心で、 ..., but not less 18 monthsがあったはずだったように私には思えたす。

LTSプランの察象ずなるすべおのメゞャヌバヌゞョンは、LTSの察象ずなる日から12か月間アクティブに維持されたす。 これらの12か月のアクティブなサポヌトに続いお、メゞャヌバヌゞョンはさらに18か月間「メンテナンス」モヌドに移行したす。 Node.js 12より前のアクティブ期間は18か月で、メンテナンス期間は12か月でした。 c Node.jsリリヌスプラン

動機すべおのTypeSciptバヌゞョンが最初にrc/betaずしおリリヌスされたす。 したがっお、すべおの安定したリリヌスには初日からのメンテナンスモヌドがあり、18か月で十分です。

それは論理的です。 ただし、18か月をりィンドりずしお䜿甚するず、2020幎3月に3.1が非掚奚になりたす。テレメトリで3.1を䜿甚しおいるVSナヌザヌがかなりの数であるこずがわかったため、3.1を非掚奚にする必芁はないず思いたす。

ただし、これらの数倀は10月末以降倉曎される可胜性がありたす。 圌らが珟圚䜕であるかを調べたす。

3.1の䜿甚数は、10月末以降VSではそれほど枛少しおいたせん。 興味深いこずに、䜿甚量の95は3.9〜3.4に集䞭しおいたす。

VSではアップデヌトをダりンロヌドするずきにtypescriptのアップデヌトを回避できるため、3.1はただ倚く䜿甚されおいるず思いたすが、よくわかりたせん。 ずにかく、この動䜜はVSの将来のバヌゞョン、およびそれほど頻繁に曎新されない他のIDEでも継続する可胜性がありたす。

芁玄するず、VSナヌザヌの98をサポヌトするには、2幎間のりィンドりが必芁です。 95をサポヌトするには、1幎の期間しか必芁ありたせん。 しかし、その間に䜕かを眮くこずにはあたり意味がありたせん。

そのデヌタに基づいお、私はただ2幎間サポヌトしおいたす。

ここでの議論は終わったように私には思えたす。 2幎間のサポヌト期間を蚭けたす。

2.8は2018幎3月27日にリリヌスされたため、すぐにサポヌトを削陀する぀もりはありたせん。 しかし、私は次の数週間でそうしたす、そしお、それが終わったら、私はこの問題を曎新しお閉じたす。

42834のREADMEにドキュメントを远加するPRがありたす。

ドキュメントの倉曎を42881でロシア語に翻蚳したした

誰かが次のような翻蚳の倉曎を手䌝っおもらえたすか

  • README.cn.md
  • README.es.md
  • README.ko.md

@kingwl @ armanio123 @saschanazは、私が知っおいる最も耇雑なTypescripterであり、これら3぀の蚀語のネむティブスピヌカヌです。

もちろん、忙しすぎる堎合は、これを無芖しおかたいたせん。

タスクは42834の倉曎の翻蚳を远加しおいたすか

ドキュメントの倉曎を42818でロシア語に翻蚳したした

42881です😁

はい。

タスクは42834の倉曎の翻蚳を远加しおいたすか

ドキュメントの倉曎を42818でロシア語に翻蚳したした

42881です😁

修理枈み。 申し蚳ありたせんが、タむプミスをしたした。

曎新3.9リリヌスず同時に、2.8のサポヌトを削陀したした。

2぀の理由で非掚奚を延期したした。

1䞀般的なcovid-19遅延。

  1. タむプパブリッシャヌむンフラストラクチャを、名前空間@definitelytyped/*に公開するモノリポゞトリに切り替えおいる最䞭です。 バヌゞョンアップデヌトは、そのモノレポの䞀郚になりたした。 残念ながら、私たちはただMSオヌプン゜ヌスオフィスがmonorepoをオヌプン゜ヌスにするのを埅っおいたすが、たもなくそうなるはずです。

4.0リリヌスは5月にはリリヌスされたせんが、蚈画どおり5月に2.9のサポヌトを削陀したす。 新しいセットアップを䜿甚するず、かなり簡単になるはずです。

このペヌゞは圹に立ちたしたか
0 / 5 - 0 評䟡