Vite 7 නව සංස්කරණය, නිෂ්පාදන ගොඩනැගීමේ ඉලක්කයක් ලෙස “Baseline Widely Available” භාවිතා කරයි. මේ සමඟ TypeScript භාවිතා කරන සංවර්ධකයින්ට නව API ගොඩනැගීමේ අවස්ථාවක් ලැබේ.
උදාහරණයක් ලෙස, Vite යෙදුමකට Promise.withResolvers<number>() සහ document.startViewTransition() යන කෝඩ් කොටස් එක් කර npx vite build ධාවනය කළාම, ගොඩනැගීම සාර්ථකයි. එහෙත්, මෙම API දෙකම 2024 සහ 2025 වසරේ “Baseline Newly Available” ලෙස පෙනෙයි, එනම් සාමාන්ය බ්රව්සර වල තවමත් පූර්ණයෙන් අනුලභ්ය නොවේ.
මෙය Vite හෝ TypeScript හි දෝෂයක් නොව, “build target” සහ “API contract” අතර ඇති ගැටලුවක්. Vite ගොඩනැගීමේ ඉලක්කය JavaScript වාක්ය රචනා පරිවර්තනය කිරීමේ අවශ්යතාවය පමණක් තීරණය කරයි; එය භාවිත කරන API ගොඩනැගීමේ පරිසරයට අනුකූලදැයි පරීක්ෂා නොකරයි. TypeScript හි lib.esnext.d.ts, lib.dom.d.ts වැනි ප්රකාශන ගොනු, Baseline තත්ත්වය අනුව පෙරහන් නොකරයි.
ඉතින්, “Baseline API” පරීක්ෂණයක් එක් කිරීම අවශ්ය වේ. typescript-baseline-lib සහ @baseline-types/dom-widely-available පැකේජ දෙකක් ස්ථාපනය කර, නව tsconfig.baseline.json ගොනුවක් සකස් කිරීමෙන් මෙම පරීක්ෂණය CI පියවරක් ලෙස ක්රියාත්මක කළ හැක. මෙහි වැදගත් විකල්පය noLib: true සහ types අරඹා, සාමාන්ය ES/DOM ලයිබ්රරී වෙනුවට Baseline‑අනුකූල ප්රකාශන භාවිතා කිරීමයි.
මෙම සැකසුම එක් කළ පසු, Vite ගොඩනැගීමේ සාර්ථකත්වය පවා නැවත පරීක්ෂා කර, අනුලභ්ය නොවන API භාවිතය තෝරා ගැනීමේ දෝෂයක් පෙන්වයි. ඒ නිසා සංවර්ධකයන්ට නිෂ්පාදන පරිසරය හා සංවර්ධන පරිසරය අතර ඇති අසමතුලිතතාව ඉවත් කර, රන්ටයිම් දෝෂ අවම කර ගත හැක.
ශ්රී ලංකාවට ඇති වැදගත්කම
- විකසිත පරිසරයේ අනුකූලතාව: ශ්රී ලංකාවේ තාක්ෂණික ආයතන, විශ්වවිද්යාල සිසුන් සහ ස්වයං රැකියා සංවර්ධකයන්ට අනාගත බ්රව්සර සමග අනුකූල කේත ලියීමේ හැකියාව ලැබේ.
- CI/CD ගුණාත්මකභාවය: Baseline පරීක්ෂණය CI පියවරකට එක් කිරීමෙන්, නිෂ්පාදන පසුබැසීමේ වැරදි අඩු කර, නව පාරිභෝගිකයන්ට විශ්වාසය ගොඩනගා ගත හැක.
- ආර්ථික වාසිය: අනුලභ්ය නොවන API මත පදනම් වූ වැරදි නිසා සිදුවන පණිවිඩ සකස් කිරීමේ කාලය හා වියදම අඩු කර, ව්යාපාරික ව්යාපෘති වේගවත් කරයි.
සාරාංශයෙන්, Vite 7 හි “Baseline Widely Available” ඉලක්කය API සම්මුති නොවන බව අවධාරණය කරයි. TypeScript‑අධික්රම Baseline ලයිබ්රරී භාවිතා කිරීමෙන්, ඔබේ ව්යාපෘතියේ සුරක්ෂිතත්වය, අනුකූලතාව සහ නවීකරණය තහවුරු කර ගත හැක.