ãã®ããã¥ã¡ã³ãã§ã¯ãTypeScript 4.0ã«çŠç¹ãåœãŠãã¿ã¹ã¯ã®æŠèŠãšãç¹å®ã®äœæ¥é ç®ã«åªå é äœãä»ããæ¹æ³/çç±ã説æããããã€ãã®èª¬æã瀺ããŸãã äœã決ãŸã£ãŠããªãããåççãªæéæ ã§ããããå®äºããããåªããã
æ¥ä»| ã€ãã³ã
-------------- | -----------------------------
5æ12æ¥| TypeScript 3.9ãªãªãŒã¹ïŒéå»ïŒ
6æ22æ¥| ãã¹ãçšã«4.0ããŒã¿ïŒ4.0.0ïŒãã«ããäœæãã
6æ25æ¥| TypeScript4.0ããŒã¿ãªãªãŒã¹
7æ31æ¥| ãã¹ãçšã«4.0RCïŒ4.0.1ïŒãã«ããäœæãã
8æ6æ¥| TypeScript 4.0RCãªãªãŒã¹
8æ14æ¥| ãã¹ãçšã«4.0FinalïŒ4.0.2ïŒãã«ããäœæãã
8æ20æ¥| TypeScript4.0æçµãªãªãŒã¹ð
awaited
ã¿ã€ãã調æ»ããŸãunknown
catch
å¥ãã€ã³ãã£ã³ã°ã®$ïŒ$ 1 $ïŒ$/** <strong i="56">@deprecated</strong> */
ã¿ã°ã®ãšãã£ã¿ãŒãµããŒã/** <strong i="60">@see</strong> */
ã¿ã°ã®ãšãã£ã¿ãŒãµããŒã--watch
æªæºã®ãã¡ã€ã«ã®ã¯ãªãŒãã³ã°--declaration
ãšããããšã©ãŒãåé€ããŸã<input type="file">
ã®change
ã€ãã³ãã«ã¯files
ãã£ãŒã«ãããããŸããisolatedModules
ã®ãšã©ãŒãå°ãªãããããå®éšçãªãã©ã°ã®åŸãã«ãã4.0ã«https://github.com/microsoft/TypeScript/pull/29818ãå«ããããšãæ€èšããŸããïŒ
ããã¯ããã¡ã¯ããªé¢æ°ã®å®çŸ©èªäœã®å€æŽã«ãã£ãŠè€éã«ãªããŸãã
ãã ãã_separate_ãã¡ã¯ããªä»®æ³åå®çŸ©ãå°å
¥ããããšã¯èå³æ·±ããããããŸããã ããšãã°ã JSX.Factory
ããŸãã¯React.JSX.Factory
ã¯ãTypeScriptãæšè«ã«äœ¿çšã§ããŸãã JSXææ³ãé¢æ°åŒã³åºãã«å€æããã ãã§ååãŸãã¯å¹ççãã©ããã¯ããããŸããããä»®æ³åã§ãããããå
·äœçãªJavaScriptãšã³ãã£ãã£ã«å¯Ÿå¿ããå¿
èŠã¯ãããŸããã ãã¡ããããªã¹ã¯ã¯çŸåšãšåãç¶æ³ã«ãªãã€ã€ãããå€ãã®ä»®æ³åããåã ãã§ãªããReact15以éã«å°å
¥ãããããã€ãã®æ©èœã®åå®å
šæ§ãå¶éããããšã«ãªããŸããã
4.0ã«ãhttps://github.com/microsoft/TypeScript/pull/24738ãå«ããããšãæ€èšããŸããïŒ
ïŒ15230 [ð27]ã®ãããªãã±ããããéèŠãé«ãããšèŠãªãããŠããã®ã«ãïŒ33038 [ð140ãšããªãèªèº«ã®@weswighamã«ããå®éã®PR]ãŸãã¯ïŒ202 [ð390]ã®èšåããªãã®ã¯å°ãæ²ããã§ãã ãããããã«åºã¥ããŠå®éã«æ¯èŒãããåªå é äœãä»ãããããããšã¯ã§ããªããšæããŸãããç¹ã«4.0ããã®ãããªæ©èœãå°å ¥ããè¯ãæ©äŒã®ããã«æãããããããããã«é¢ããããŒããããã®æŽæ°ãããã°çŽ æŽããããšæããŸãã ð
é
åã®ç Žå£ãªã©ã«äžæ£ç¢ºãªåæå®ãæäŸããããçŽ200件ã®ã³ã¡ã³ãïŒ13778ã§ãã£ãŒãããã¯ãåŸ
ã£ãŠããçŽ3ã5幎åã®åé¡ã Pwettypweaseä¿®æ£ãå®è£
ã§ããŸããð
ããŒãããããã€ãã¬ãŒã·ã§ã³èšç»ã«æ³šæãå¿ èŠã ãšæãããåé¡ããšãã©ãåŸæŒãããŠããã人ã«æè¬ããŸãããããã§æ確ã«ããå¿ èŠããããšæããŸãããéèŠã®é«ããã°ä¿®æ£ã調æ»ãããã»ã¯ã·ã§ã³ã¯ãæããã«å€ãã®åå ãšãªã£ãŠããåé¡ã調æ»ããããšã«ãã£ãŠæ±ºå®ãããŸãããããŒããŒã«ããã§ãããç¯å²ã¯åŠ¥åœãšæãããŸããã ç§ãã¡ã¯ãèšåãããåé¡ã«ãŸã 泚æãæã£ãŠããŸããããããã®ããã€ãã¯ãç¯å²ãéå®ãããŠããããæ確ãªçæ³çãªçµæããããããŠããŸããã
äŸïŒ
undefined
ã¯èå³æ·±ãäŸã§ãããçŸåšã®ä»®å®ã®äžã§ãã§ã«æäœããŠãã人ã®90ïŒ
ãå°é£ã«ãªããããªåäœãè¿œå ããããããŸããã ãŠãŒã¶ãŒããããã®ãã§ãã¯ã段éçã«æ¡çšã§ããããã«ããã¢ãããŒããèŠã€ããããšã¯ãç§ãã¡ã«ãšã£ãŠæãããªããšã§ã¯ãããŸããã äžé£ã®æ¡ä»¶ä»ãåãšç¹å¥ãªã³ã³ãã€ã©ãã§ãã¯ã§æè¡çã«å¯èœã§ãããšããŠãããããã®ãœãªã¥ãŒã·ã§ã³ã¯éåžžã«æããã«ããããŒã§ãããããã«æ©èœããªããªãåŸåããããŸããåç®äžã®ãã©ã³ãã¯çŽ æŽãããã§ãããããããã¯åç®äžã®å°æ¥ã®èšèªã®æ¹åæ§ã§æ§æãããŸããïŒ
@DanielRosenwasserããªãã®ããžã§ã³ã«ãããå°æ¥ã®èšèªã®æ¹åæ§ã¯äœã§ããïŒ
ç§ã®å¿ãåç®äžã©ãã«ããã®ãã«ã€ããŠãããã€ãã®æèã説æãããšæããŸãã èšåçåã«ã€ããŠå°ãããšãã«äººã ã念é ã«çœ®ããŠããããŸããŸãªã¢ã€ãã¢ããããããããŸãã
struct
newtype
ãKotlinã®ã€ã³ã©ã€ã³ã¯ã©ã¹ïŒãããã®ããã€ãã®éã«ã¯é°åœ±ãããïŒããšãã°ããã¬ãŒã¹ãã«ããŒå宣èš-å®è£ åã«ãã©ãŒã«ããã¯ããäžéæïŒOPAQUEïŒåã®äžçš®ã®å€åœ¢ïŒã次ã«ãããã®ããããããã¬ã³ãããããŸããŸãªæ¹åããããŸãã
@RyanCavanaughã¯ã3人ã®åäŸã䞡芪ã«ããããæ±ããŠãããšãããããã«ã€ããŠã®çŽ æŽãããäŸããæã£ãŠããŸããã 人ã¯ç¬ã欲ããã人ã¯ç«ã欲ããã人ã¯éã欲ããã 圌ãã¯äž¡èŠªã«ããã€ãããã飌ãã®ãïŒïŒããšå°ããŸãã æããã«åœŒãã¯çããããã欲ããããšã«åæããŠããŸããããããããç°ãªãããããæãã§ããŸãïŒ
ãã©ã³ãã¿ã€ãã¯å¥œãã§ããïŒ ããã§ãïŒ ãã©ã³ãã¿ã€ãã¯ãåå¥ã®ãšã€ãªã¢ã¹ã®ãããªãã®ãå®çŸããã»ãšãã©ã®ãŠãŒã¶ãŒãæ¢ããŠãããã®ã«é©åããŸãã ãããããããæ£ããèãæ¹ã ãšã¯æããŸããã å€ãã®æ¢ç¥ã®ãã¬ãŒããªãã§å ·äœåããããã®ããå€ãã®èšèšã¹ããŒã¹ãããã解決çãã§ããã ãæ©ãæ¥ãå¿ èŠããããšããæèŠãç§ã«äžãããã®ã¯äœããããŸããã
https://github.com/microsoft/TSJS-lib-generator/pull/858ãTypeScript4.0ã«çµã¿èŸŒãããšãã§ããã°ãšæããŸãã
@DanielRosenwasserãŸãæåã«èšäºãããããšãð
èšåçåãTypeScriptã§å®éã«ã©ã®ãããªãŠãŒã¹ã±ãŒã¹ã«å¯Ÿå¿ããŠãããã«ã€ããŠå°ã詳ãã説æããŠããã ããŸããïŒ
æåã«ïŒããã¹ããŸãã¯ã¬ãã®å·šå€§ãªå£ã«ç§ãéã£ãŠãã ããããããŠç§ã¯ãããèªã¿ãŸãïŒ]
ãã¬ãŒã¹ãã«ããŒåã®ãããªäžéæïŒOPAQUEïŒåãæå³ããã®ã§ã¯ãªãããåŸæ¥ã®ãèšååãšåŒã°ãããã®ãæå³ããŸãã
èšåçåã¯JavaScriptãšã¯æ£å察ã ãšãã€ãæããŠããã®ã§ã以åã®è©Šã¿ã¯ããŸãããŸããããŸããã§ããã ãããããªãããŸãæ©èœãããæ¹æ³ãããïŒswiftã®ãããã³ã«ãšhaskellã®åã¯ã©ã¹ã¯ãåç®ã ãå€éšããæ¡åŒµå¯èœããšããŠé ã«æµ®ãã¶ïŒãããªãã¯ã確ç«ããããæ¹æ³ã®ã»ãšãã©ã«ç²ŸéããŠãããšç¢ºä¿¡ããŠããŸãïŒç§ã¯ã枬å®åäœãã¯FïŒãŠã£ã³ã¯ã§ãããšæ³å®ããŸãïŒã
ç§ã¯å€ãã®äººã ãåç®äžã®ïŒãäŒçµ±çãªãã¿ã€ãã®ããã«ïŒã¿ã€ããæ±ããŠããã®ãèŠã€ããŸãããã_why_ã«ã€ããŠã®å€ãã®èšäºã¯ãããŸããã
æéã®çµéãšãšãã«ããåŸæ¥ã®ãèšåçåãèŠæ±ãã人ã¯ãŸããŸãå°ãªããªã£ãŠããŸããããã¯ãããããã³ãã¥ããã£ãéåçã«æ§é åã®ã¡ã³ã¿ã«ã¢ãŒããæ§ç¯ããŠããããã§ãã ã¿ã€ããå®éã«åç®äžæ©èœããå Žæãããã€ããããŸãïŒ instanceof
ãé¢ä¿ããŠããå ŽåããŸãã¯ãã©ã€ããŒããããå ŽåïŒã ãã®äžéšã¯ãããåªããå¶åŸ¡ãããŒåæãšäºææ§ãã§ãã¯ã§ãã£ããã£ãããŸãããå®å
šã§ã¯ãããŸããã
ãåŸæ¥ã®ããŠãŒã¹ã±ãŒã¹ã®ããã€ãã¯ããªãŒããŒãããããŒãã®å
¬ç§°ã©ãããŒã¿ã€ãïŒäŸïŒ newtype
ïŒã®ãŠãŒã¹ã±ãŒã¹ãšåãã§ãããå€ãã®å Žåããã¡ã€ã«ãªã©ã®ç¹å¥ãªåŠçãä¿èšŒããããšãç®çãšããŠããŸãããã¹ãä¿¡é Œã§ããªãæååãªã©ã
Typescriptã¯ãã§ã«ååã«è¡šçŸåããããšæããŠããŸãã ç§ãå人çã«èŠããã®ã¯ãããè¯ãããŒã«ã®çµ±åã§ãã
äžèšã®çç±ã§ãäžæ Œå¥œã§ããããŒãªãœãªã¥ãŒã·ã§ã³ãèŠãã®ãäžè¬çã§ãã ã»ãšãã©ã®reactãããžã§ã¯ãã«ã¯ãreact-hot-loaderïŒã³ã³ãã€ã©ãã©ã°ã€ã³ïŒçšã®babelãå«ãŸããŠããŸãããäžéšã®CSSã·ã¹ãã ã§ã¯ãã³ã³ãã€ã«æã®å€æã«babelãå¿ èŠã§ãã pnpãesmããŸãã¯CSSã¢ãžã¥ãŒã«ã䜿çšããã«ã¯ãtscã®å¶éã«å¯ŸããŠããå€ãã®ããŒã«ãšåé¿çãå¿ èŠã§ãã
ãŸãããããã®åé¡ã®ããã€ãã«ã€ããŠãã³ãã¥ããã£ãPRãŸãã¯ææ¡ã®åœ¢ã§å ·äœçãªè§£æ±ºçãæäŸãããããããã¯äœå¹Žã«ãããã£ãŠæåŠãŸãã¯åæ»ããããšãèç«ãããããšã§ãã å®è·µè ãšããŠãããåºããšã³ã·ã¹ãã ã®ã³ã³ããã¹ãã§TSã䜿çšããããšã¯ãŸããŸãé£ãããªã£ãŠããŸãã
ãšã«ããç§ã¯ã€ã³ã¿ãŒãããããã®ã©ã³ãã ãªäººã§ãã
@DanielRosenwasserå€åhttps://github.com/microsoft/TypeScript/pull/29374ã¯4.0ã«éã«åãããã«ã¬ãã¥ãŒãããå¯èœæ§ããããŸããïŒ this
-before- super
ã®äººã
ãããå°ããã±ãŒã¹ã®å€ãïŒã»ãšãã©ïŒïŒãã«ããŒããŠãããšæããŸãã
ãã¡ã€ã«æ¡åŒµåãå«ããã¡ã€ã«ãã¹ã§ESã¢ãžã¥ãŒã«ãåç §ããããã®ãµããŒããå«ããããšãåæ€èšããŠãã ããã ããã¯ããã«ãç°å¢ã³ãŒãã®ç«¶äºã®å Žãå¹³æºåããããã®å€§ããªåŸæŒããäžããã§ãããã
typescriptã®åšãã®ããŒã«ã«çŠç¹ãåœãŠãŠããã ãããããšãããããŸãïŒ https://github.com/microsoft/tsdocãšã®ç·å¯ãªçµ±åãæ€èšããŠããã ããã°å¹žãã§ãã goãrustã®ãããªä»ã®å€ãã®çŸä»£èšèªã¯ãç®±ããåºããŠããã«ããã¥ã¡ã³ãããŒã«ãæäŸããéçºè ã«æšæºã®ã³ã¡ã³ããæžãããã«ä¿ããŸãããtypescriptã¯ãã®ç¹ã§æ¬ ããŠããŸãã
ïŒ31445ãæã«å ¥ããããšãã§ããã°ãããã¯éåžžã«çŽ æŽãããããšã§ããããã¯ç§ãã¡ã«ãšã£ãŠååŒã®ãã¬ãŒã«ãŒã§ãããå€ãã®äººãïŒãã®åé¡ã®åç §æ°ã«åºã¥ããŠïŒä¿¡ããŠããŸãïŒ
https://github.com/microsoft/TypeScript/pull/38967ãTypeScript4.0ã«å«ããããšã¯ã§ããŸããããŸãhttps://github.com/microsoft/TypeScript/pull/35608ã«å«ããããšãã§ããŸãã
4.0ãªãªãŒã¹ã«ãã¹ãŠãå«ããããã«äººã ãèŠæ±ããŠããããšãããããŸããð
TSãå¢ãã倱ã£ãŠããããã«æããŸããïŒ æ¬¡ã®_major_ã4.0.0ãªãªãŒã¹ã®åäœãšç絡ã®å²ãåœãŠãç¡å¹ã«ããŸããïŒ å€§ããªç®æšãéå¿çãªã¢ã€ãã¢ã¯ãããããŸãããïŒ
次ã®ã¡ãžã£ãŒã«ã€ããŠã¯ãç§ã¯æåŸ ããŠããŸãïŒ
tsconfig.json
ã§ã®å€å§åšã®ãµããŒã@ canonic-epicureåæããŸããçŸåšã次ã®ããŒãžã§ã³ã§ã¯3.10ã®ããã«æããŸã
TSãå¢ãã倱ã£ãŠããããã«æããŸããïŒ æ¬¡ã®ã¡ãžã£ãŒãª4.0.0ãªãªãŒã¹ã®åäœãšç絡ã®å²ãåœãŠãç¡å¹ã«ããŸããïŒ å€§ããªç®æšãéå¿çãªã¢ã€ãã¢ã¯ãããããŸãããïŒ
TypeScriptã¯semverã«åŸããŸããã v0.10ãv1.10ãv2.10ããŸãã¯v3.10ã¯ãããŸããã ãããã£ãŠãããã¯å®éã«ã¯éåžžã®ãã€ã«ã¹ããŒã³ã§ãã 4.0ã§ããã»ã©å€ãã®å€æŽãæåŸ ããŠããã®ã«ã3.9ãŸãã¯ãã以åã®å埩èšç»ã§ã¯äœãèšããªãã®ã¯å°ãå¥åŠãªããšã§ãã ð
ã¿ã€ãã¬ãã«ã®é¢æ°
type X<T> = T
ã¯ããã¬ãã«ã§ãããè¡ãããšãã§ããŸãã ïŒé«éé¢æ°ã¯ãµããŒãããŠããŸãããïŒ
ãã¯ããŒãŒ
IMOã¯Typescriptã®ç®æšãæºãããŠããŸããã
tsconfig.jsonã§ã®ãã©ã³ã¹ãã©ãŒããŒã®ãµããŒã
è©ŠããŠã¿ãŠãã ããïŒ https ïŒ//github.com/cevek/ttypescript
WASMãžã®ã³ã³ãã€ã«ïŒäžéšã®èšèªãµãã»ããã®ïŒ
https://www.assemblyscript.org/ããæ¢ãã§ãã
ããŠã4.0.0ã¯æ¬¡ã®ãã€ããŒãªãªãŒã¹ã§ããç¥ã£ãŠãããšããã§ãããã
ããã¯ãã¹ã¯TSã®ç®æšãæºãããŠããªãããšããã©ã³ã¹ãã©ãŒããŒã«ttypescriptã䜿çšãããïŒ ts-patch
ã®æ¹ãããŸãããïŒ-ããã¯ãžã§ãã€ã®åãã«äŒŒãŠããŸã-ãããã¯å¿
èŠãªæ©èœã§ã¯ãããŸãããã ããããç®±ããåºããŠãã¯ããšãã©ã³ã¹ããé¡ãããŸãã ããã¯äœå¹Žãåã«èŠæ±ãããŸããã
TypeScriptã§marcoã欲ããã®ã§ãããããã«ã¯æ¬åœã«å€ãã®çç±ããããŸãã
Marcoãç°ãªãJavaScriptã³ãŒããçæã§ããå Žåãããã¯æ°ããéåã¬ãã«ã®æ§æãäœæããŠãããããESä»æ§ã®æ¡åŒµã§ãã enum
ã import x = require(...)
ã module
ã¯ãã®ã«ãŒã«ã®äŸå€ã§ããããããã¯TypeScriptã®åæã®ãã®ã§ãã
ç°ãªããã¡ã€ã«ãã¯ãã¹ããŠç°ãªãJSãã¡ã€ã«ãçæããããã«Marcoã¯ãã¹ã䜿çšããå ŽåãJavaScriptãã¡ã€ã«ãååŸããããã«ãã¹ãŠã®ã¿ã€ãã®æ§æãã°ãããŠåé€ããããšã¯äžå¯èœã§ãã
ãã«ã³ã¹ã¯åæãšã³ã³ãã€ã«æéãå¢ããå¯èœæ§ããããæªçšãããå¯èœæ§ããããŸãã
ãã«ã³ãã¿ã€ãæ
å ±ã«åºã¥ããŠç°ãªãJSãã¡ã€ã«ãçºè¡ã§ããå Žåãããã«ã¯ãã®æ§æãåŠçã§ããªããªããŸãã ãããã£ãŠããã®åäœã¯isolatedModules
ã«ãŒã«ã«éåããŠããŸãïŒäŸå€ïŒ const enum
ããã³module
ïŒ
ãã«ã³ããã¿ã€ãã¬ãã«ã®ãã«ã³ãããå®è¡ã§ãããBabelã«ãã£ãŠå®å šã«æ¶å»ã§ããå Žåãããã¯ã»ãšãã©åœ¹ã«ç«ããªããªããŸãããããã§ãé«é/ããã°ã©ã ã¿ã€ãã«ã¯åœ¹ç«ã¡ãŸãã ãããã£ãŠãããã¯ãããªãç®æšã«ãéåããŠããŸããããTypeScriptããŒã ããã®ã¢ã€ãã¢ã«èå³ãæã£ãŠããããã©ããã¯çåã§ãã ïŒhttps://github.com/Jack-Works/typescript-marco-demo/blob/master/marco-test.tsã§ãã¢ãäœæããŸããïŒã
@ Jack-Worksç§ã¯ããªãã®ãã€ã³ããç解ããŠããŸããã ããããããã¯ããããŒãµãŒãæ¡åŒµããæ°ããsynatxãäœæããããšãæå³ããŸããïŒ
ç§ã«ãšã£ãŠããã¯ãã¯åãªãAST-> ASTé¢æ°ã§ããã以åã®ã¿ã€ããã§ãã«ãŒãäœããã®åœ¢ã§å®è¡ãããããå®æçã«ã¿ã€ããã§ãã¯ãããæ°ããASTããŒããäœæã§ããŸãã ãã ããæ°ããæ§æã¯äœæãããŸãããå ¥åã¯éåžžã®ASTã§ãããåºåãåæ§ã§ãã ASTã«æ°ããããŒããäœæããŸãã
è°è«ã¯ãã®ã¹ã¬ããã§ã¯ãããã¯ããå€ãããããã#compilerãã£ãã«ã§äžåã«ç¶ããããã®ã§ããããïŒ
ïŒ38597ãTypeScript 4.0ã«å«ããããšã¯ã§ããŸããïŒ
@DanielRosenwasser
ã€ã³ããã¯ã¹çœ²åã®æªå®çŸ©ã¯èå³æ·±ãäŸã§ãããçŸåšã®ä»®å®ã®äžã§ãã§ã«åäœããŠãã人ã ã®90ïŒ ã«ãšã£ãŠå°é£ã«ãªããããªåäœãè¿œå ããããããŸããã
ããã人ã ã®90ïŒ ã§ããããšãã©ããã£ãŠç¥ã£ãŠããã®ãèå³ããããŸããïŒ
@wongjiahauçªå·ã¯èª¬æã®ããã«ããããªãäœæãããŸããã ãããããªããå°ããŠããç¹å®ã®ãã€ã³ãã§ãããã©ããã¯ããããŸããã
ãããã¢ããã®äººã ãšåãããã«ãç§ãã¡ã®ããŒã ã¯6æ19æ¥ã«äœæ¥ãè¡ããªããããã¹ã±ãžã¥ãŒã«ãå°ã延æããŸãã ããŒã¿çã¯ã6æ25æ¥æšææ¥ãŸã§ã«åºè·ãããäºå®ã§ãã
@DanielRosenwasser Typescriptã®æåã®ç®çã§ããããšã©ãŒã«ãªããŸãã
誀解ããªãã§ãã ãããã³ã¢ããŒã ããã®ãããžã§ã¯ãã«å€å€§ãªåŽåãè²»ãããŠãããããšã«æè¬ããŸããã代ããã«ãã®ãããžã§ã¯ãã®ç®çã«çã«äžèŽã§ããã°ããã£ãšè¯ãã§ãããšæããŸãã蚌æãããŠããªã声æããã®é²æ©ã劚ããããšãèš±ãããšã
@wongjiahauããŒãã£ã³ã°ã«ã¯åå ãããããããšã«ã¯ããã®æ°ã¯90ïŒ ã§ããããããå€ã®85ïŒ ãè¶ ããŠãããšèšã£ãã®ã§ããã®æ©èœã¯çµ¶å¯Ÿã«å®è¡ããªãã§ãã ããããšèšããŸããã ç§ãã¡ã¯ãŸã 調æ»äžã§ãããéçºè ã®éèŠãååã«èªèããŠããŸããããã®æ©èœãå®éã«ã©ã®ããã«èŠãããããã¹ãããŠããããããã§ã¯ãªããšèšããŸãã
ãã®ãããªç§ãã¡ããã®ãã®ãããªå£°æãé床ã«åæããããšãããšãã€ã³ã¿ãŒãããäžã§ç©æ¥µçã«èª€è§£ããããããããã¹ãããšãããã®ã§ãç§ãã¡ããåŸããã声æã¯å°ãªããªããŸãã
4.0ã¯ãã3.9ã®æ¬¡ã®ããŒãžã§ã³ãã§ã¯ãªããééããªããã€ã«ã¹ããŒã³ã§ãã
@ typescript-ãããäœæãªãªãŒã¹-4.0
Heya @DanielRosenwasser ãç§ã¯ããªãã®ããã«release-4.0
ãã©ã³ããäœæãå§ããŸããã ããããã°ã§ã®ç§ã®æè¯ã®æšæž¬ãžã®ãªã³ã¯ã§ãã
@Kingwlããããã€ã«ã¹ããŒã³ã§ããå Žåããããã®å€§ããªãã®ã¯äœã§ããããŸãã¯å°ãªããšãããŒããŒæ©èœã¯äœã§ããïŒ ãã®å·ã®åé ã«ããèšèªæ©èœãªã¹ãã«ã¯ããã®ãããªãã°ããããã®ã¯äœããããŸããã ã»ãšãã©ã®3.xãªãªãŒã¹ãšæ¯èŒããŠç°åžžãªããšã¯ãããŸããã
ãã¡ãããã¡ãžã£ãŒããŒãžã§ã³ã®ãªãªãŒã¹ãå¿
èŠãªã®ã¯åãªãç Žå£çãªå€æŽã§ãããšèšããããããŸãããããããããã€ã«ã¹ããŒã³ããšåŒã¶ã®ã¯é£ããã§ãã
@wgebczykç§ã®æèŠã§ã¯ãã©ãã«ä»ãã¿ãã«èŠçŽ ãæã€å¯å€ååŒæ°ã¿ãã«ããã€ã«ã¹ããŒã³ã§ãã
@wgebczykæ°ã«ããªãã§ãã ããã ããããå®éã«ã¯å¯å€ååŒæ°ã¿ãã«ã¯ã§ãã
@xiaoxiangmoe @Kingwlãã€ã«ã¹ããŒã³ïŒ ã€ã³ãã¹ããŒã³ã
ããã«ãããŸãïŒ https ïŒ//devblogs.microsoft.com/typescript/announcing-typescript-4-0-beta/#variadic -tuple-types
ããã¯ãã€å®å®ããŒãžã§ã³ã«å°éããŸããïŒ VSCodeã§ã®ã³ãŒãã£ã³ã°ã«ãããæ¯æ¥é©çšããã®ãåŸ
ã¡ãããŸããã
@ mk0yã¯ã8æ18æ¥ã®ãªãŒããã³ã°ã¡ãã»ãŒãžã«ãããšã
@wgebczykç§ãã¡ã®ãªãªãŒã¹ã¯æéããŒã¹ã§ãã åãªãªãŒã¹ã«ã¯ãããŒã ã®äœæ¥ã®çŽ3ãæãå«ãŸããŠããŸãã ç§ãã¡ã®ãã€ã«ã¹ããŒã³ããŒãžã§ãã³ã°ããªã·ãŒïŒn = n + 0.1ïŒã¯ãéå»20ã®ãªãªãŒã¹ã§äžè²«ããŠããã®ã§ãããããã€ã人ã ã«ãšã£ãŠé©ãã§ã¯ãªããªãããšãé¡ã£ãŠããŸãð
次ã®ãã€ããŒãªãªãŒã¹ã§ãã€ã³ããã¯ã¹äœæã«symbol
ã¿ã€ããèš±å¯ããããšãæ€èšããŸããïŒ ãã«ãªã¯ãšã¹ã26797ãå®çŸããŠããŒãžã§ããŸããïŒ
Heya @DanielRosenwasser ã release-4.0
4.0.1-rc
ã«æŽæ°ãå§ããŸããã ããããã°ã§ã®ç§ã®æè¯ã®æšæž¬ãžã®ãªã³ã¯ã§ãã
@ typescript-ãããåæãªãªãŒã¹-4.0
Heya @DanielRosenwasser ã release-4.0
ããã¹ã¿ãŒãšåæãå§ããŸããã ããããã°ã§ã®ç§ã®æè¯ã®æšæž¬ãžã®ãªã³ã¯ã§ãã
@ typescript-ãããåæãªãªãŒã¹-4.0
Heya @DanielRosenwasser ã release-4.0
ããã¹ã¿ãŒãšåæãå§ããŸããã ããããã°ã§ã®ç§ã®æè¯ã®æšæž¬ãžã®ãªã³ã¯ã§ãã
@weswigham mmmmmmmmmmmmmmmmmm ããããã¯ç§ãå«ã£ãŠããŸãïŒïŒïŒ ïŒïŒ ïŒïŒïŒ
æ¥ãããšã¯çµ¶å¯Ÿã«ãããŸããããæåã§è¡ãããããæåºããŸããïŒ https ïŒ//github.com/microsoft/TypeScript/issues/39869
4.0以éã®ããŒããããã¯ã©ããã«ãããŸããïŒ éèŠããŸããŸãé«ãŸã£ãŠããã®ã§ãïŒ37582ãããŒã¹ãããããšæããŸãïŒïŒ39965ãïŒ38149ãïŒ27481ãïŒ39965ãïŒ38546ïŒã ããã¯ç§ã«ã¯åççãªç¯å²ã®åé¡ã®ããã«èŠããŸãã
æŽæ°ãšåãããã«ãWebãµã€ãã®ç«ã¡äžãããRCã«çéžããå¿ èŠããããšæãããã®ä»ã®å€æŽã®ããã«ãRCã2æ¥ç§»åããå¿ èŠããããŸããã ãã以äžåŸæ»ãããããšã¯ãªããšæããŸãããå®å šã®ããã«ãRCã«é¢ãããã£ãŒãããã¯ãåŸãããã«ããã«2æ¥éãè²»ããã代ããã«20æ¥ãç®æããŸãã
@ typescript-ããããã³ããªãªãŒã¹-4.0
Heya @DanielRosenwasser ã release-4.0
4.0.2
ã«æŽæ°ãå§ããŸããã ããããã°ã§ã®ç§ã®æè¯ã®æšæž¬ãžã®ãªã³ã¯ã§ãã
8æ20æ¥ã§ã:)
ããããŸã 8æ19æ¥ã§ããä»ãã20ååŸã§ãããå°ãåŸ ããªããã°ãªããªããšæããŸãã ãã1åãããããªãå Žåã¯ãnpmã«æ¯æ©ãªãªãŒã¹ããããŸãã ð
ãªãªãŒã¹ãåŸ ã£ãŠããŸãããã§ã«npmã«ãããŸã:)
@ typescript-ããããã³ããªãªãŒã¹-4.0
Heya @DanielRosenwasser ã release-4.0
4.0.3
ã«æŽæ°ãå§ããŸããã ããããã°ã§ã®ç§ã®æè¯ã®æšæž¬ãžã®ãªã³ã¯ã§ãã
@ typescript-ããããã³ããªãªãŒã¹-4.1
Heya @DanielRosenwasser ã release-4.1
4.1.1-rc
ã«æŽæ°ãå§ããŸããã ããããã°ã§ã®ç§ã®æè¯ã®æšæž¬ãžã®ãªã³ã¯ã§ãã
倧é
@ typescript-ããããã³ããªãªãŒã¹-4.0
Heya @DanielRosenwasser ã release-4.0
4.0.4
ã«æŽæ°ãå§ããŸããã ããããã°ã§ã®ç§ã®æè¯ã®æšæž¬ãžã®ãªã³ã¯ã§ãã
@ typescript-ããããã³ããªãªãŒã¹-4.0
Heya @DanielRosenwasser ã release-4.0
4.0.5
ã«æŽæ°ãå§ããŸããã ããããã°ã§ã®ç§ã®æè¯ã®æšæž¬ãžã®ãªã³ã¯ã§ãã
æãåèã«ãªãã³ã¡ã³ã
Typescriptã¯ãã§ã«ååã«è¡šçŸåããããšæããŠããŸãã ç§ãå人çã«èŠããã®ã¯ãããè¯ãããŒã«ã®çµ±åã§ãã
äžèšã®çç±ã§ãäžæ Œå¥œã§ããããŒãªãœãªã¥ãŒã·ã§ã³ãèŠãã®ãäžè¬çã§ãã ã»ãšãã©ã®reactãããžã§ã¯ãã«ã¯ãreact-hot-loaderïŒã³ã³ãã€ã©ãã©ã°ã€ã³ïŒçšã®babelãå«ãŸããŠããŸãããäžéšã®CSSã·ã¹ãã ã§ã¯ãã³ã³ãã€ã«æã®å€æã«babelãå¿ èŠã§ãã pnpãesmããŸãã¯CSSã¢ãžã¥ãŒã«ã䜿çšããã«ã¯ãtscã®å¶éã«å¯ŸããŠããå€ãã®ããŒã«ãšåé¿çãå¿ èŠã§ãã
ãŸãããããã®åé¡ã®ããã€ãã«ã€ããŠãã³ãã¥ããã£ãPRãŸãã¯ææ¡ã®åœ¢ã§å ·äœçãªè§£æ±ºçãæäŸãããããããã¯äœå¹Žã«ãããã£ãŠæåŠãŸãã¯åæ»ããããšãèç«ãããããšã§ãã å®è·µè ãšããŠãããåºããšã³ã·ã¹ãã ã®ã³ã³ããã¹ãã§TSã䜿çšããããšã¯ãŸããŸãé£ãããªã£ãŠããŸãã
ãšã«ããç§ã¯ã€ã³ã¿ãŒãããããã®ã©ã³ãã ãªäººã§ãã