programmatūra · 5 min · 12.07.2026

TypeScript 7.0 iznāk stabils — Go pārrakstītais kompilators saīsina VS Code tipu pārbaudi no 126 līdz 11 sekundēm

Microsoft 8. jūlijā izlaida TypeScript 7.0 stabilo versiju — kompilatoru un valodas serveri, kas tagad pilnībā uzrakstīts Go valodā. Pašu VS Code koda bāzes tipu pārbaude ar noklusējuma iestatījumiem saruka no 125,7 līdz 10,6 sekundēm. Tas ir 11,9 reizes ātrāk nekā ar iepriekšējo laidienu.

Pārrakstīšana sākās 2025. gada martā ar kodnosaukumu Corsa. Līdz šim TypeScript kompilators bija rakstīts pašā TypeScript un darbojās uz Node.js — valoda pārbaudīja pati sevi. Tā bija ērti pašiem izstrādātājiem, bet lēni lieliem projektiem, jo JavaScript vispirms jāinterpretē vai jāsakompilē uz vietas, un tā atmiņas modelis neļauj vienkārši sadalīt darbu starp vairākiem kodola pavedieniem.

Kāpēc Go

Go kompilējas uz mašīnkodu, tāpēc nav JIT iesildīšanās un nav JavaScript interpretācijas slāņa. Vēl svarīgāk — Go atmiņas modelis atļauj vienlaikus strādāt vairākiem pavedieniem ar kopīgu atmiņu. TypeScript 7.0 tipu pārbaudi pēc noklusējuma sadala starp četriem darba pavedieniem; ar karodziņu --checkers 8 VS Code pārbaude noiet vēl ātrāk, līdz 7,51 sekundei, jeb 16,7 reizes ātrāk par sesto versiju.

Binārais fails joprojām saucas tsc, un instalācija paliek npm install -D typescript. Kompilatora izvade — kļūdas, tipu secinājumi, ģenerētais JavaScript — sakrīt ar sesto versiju, jo tas ir pārnesums, nevis jauns kompilators. Go koda bāze ir atvērta GitHub.

Kam viena mašīna ar daudziem kodoliem nav pieejama, ar karodziņu --singleThreaded var atgriezties pie viena pavediena. Redaktora pusē komanda pa ceļam atjaunoja iespējas, kas sākotnējā priekšskatījumā trūka: automātisko importu ievietošanu, semantisko krāsošanu un importu kārtošanu. Valodas serveris tagad balstās uz Language Server Protocol, tāpēc to spēj izmantot arī redaktori ārpus VS Code.

Ko rāda mērījumi

Microsoft publicēja pilna projekta būvēšanas laikus vairākām publiskām koda bāzēm:

  • VS Code — no 125,7 s uz 10,6 s (11,9×)
  • Sentry — no 139,8 s uz 15,7 s (8,9×)
  • Bluesky — no 24,3 s uz 2,8 s (8,7×)
  • Playwright — no 12,8 s uz 1,47 s (8,7×)
  • Tldraw — no 11,2 s uz 1,46 s (7,7×)

Redaktorā izmaiņa jūtama tiešāk nekā skaitļos. VS Code kļūdu parādīšanās aizkave nokrita no 17,5 sekundēm līdz mazāk par 1,3 sekundēm. Canva projektā pirmā kļūda tagad parādās pēc 4,8 sekundēm; iepriekš bija jāgaida ap 58 sekundēm. Valodas serveris arī kļuva stabilāks: neizdevušos komandu skaits sarucis par 80 %, avāriju skaits — par 60 %.

Atmiņas patēriņš samazinājās mērenāk. VS Code tipu pārbaude tagad prasa 4,2 GB iepriekšējo 5,2 GB vietā (par 18 % mazāk), Bluesky — par 26 % mazāk. Sentry ietaupīja tikai 6 %, tāpēc lielās koda bāzēs joprojām jārēķinās ar vairākiem gigabaitiem.

Ko tas dod komandām

Ātrāka pārbaude visvairāk maina CI un koda apvienošanas rindas, kur tipu pārbaude notiek pie katra pull request. Slack inženieri Microsoft pastāstīja par savu rezultātu.

TypeScript 7 likvidēja 40 % no mūsu apvienošanas rindas laika un saīsināja tipu pārbaudi CI no aptuveni 7,5 minūtēm līdz 1,25 minūtēm.

Vanta ziņoja par līdz 9 reizēm ātrāku pārbaudi lielākajos projektos, bet Microsoft News Services aprēķināja, ka ietaupa 400 stundas mēnesī, ko agrāk pavadīja, gaidot CI būves.

Kas jāmaina projektos

Jauninājums nav bezmaksas visiem. Septītā versija izmeta atbalstu vairākām vecām iespējām: target: es5, downlevelIteration, moduļu formātiem amd, umd, systemjs, kā arī vecajai node moduļu izšķirtspējai un Closure stila JSDoc sintaksei. Ja projekts joprojām mērķē uz ES5 vai izmanto šos moduļu formātus, būs jāatjaunina konfigurācija vai jāpaliek pie sestās versijas.

Mainījušies arī daži noklusējumi. Piemēram, types vairs automātiski neielādē visas @types pakotnes — tagad tas ir tukšs saraksts, un atkarības jānorāda tieši. Kam vajag laiku, Microsoft uztur sesto versiju paralēli: to var instalēt zem cita nosaukuma ar npm install -D typescript@npm:@typescript/typescript6 un darbināt abas versijas vienā projektā.

Ko vēl neatbalsta

Stabilā versija neaptver visu ekosistēmu. Vue, Svelte, Astro, MDX un Angular veidņu tipu pārbaude vēl nedarbojas ar jauno kompilatoru, jo šie rīki paļaujas uz veco programmatisko API, kas Go pārnesumā vēl nav gatavs. Pēc InfoWorld ziņotā, publisko API paredzēts atklāt versijā 7.1 pēc dažiem mēnešiem; līdz tam Webpack ielādētāji un citi rīki, kas sauc kompilatoru programmatiski, turpina strādāt ar sesto versiju.

Praksē tas nozīmē divus paralēlus TypeScript laidienus vēl labu laiku: septīto tiešai tipu pārbaudei un būvēšanai, sesto rīkiem, kas gaida jauno API. Komandas, kas raksta parastu TypeScript vai React bez īpašiem veidņu kompilatoriem, jauno versiju var likt lietā uzreiz.

Avoti

komentārisaruna

Komentāri

Šim rakstam vēl nav komentāru. Esi pirmais, kurš dalās ar savu viedokli.

Pievieno komentāru

Tavs e-pasts netiks publicēts. Obligātie lauki atzīmēti.

vēl no programmatūrasaistītie