GitLab Hackathon 2026 කට පෙර, මම GitLab CLI (glab) මූලාශ්ර කේතය ගොඩක් පරීක්ෂා කළා. අරමුණ වුයේ ක්රැෂ් හොයන්නෙකු නොව, ලේඛන සහ කේත අතර අසම්මතතා හඳුනා ගැනීමයි. ඒ සොයාගත් විට, ලේඛනවල වැරදි 6ක් සහ CI පද්ධතියේ ගැටළු 2ක් හමුවුණා, ඒ සියල්ලම Merge Request ලෙස ඉදිරිපත් කළා.
GitLab CLI ලේඛනවල වැරදි 6ක්
- Deprecated flag but still shown in examples –
glab issue listසහglab incident listකමාන්ඩ් වල--openedflag එක hidden, deprecated, default value එකක්. උදාහරණයක් පිටපත් කරලා භාවිතා කළාම deprecation warning එකක් ලැබෙයි, නමුත් ප්රවේශය ඒකේම. - Help text teaches removed options –
glab mr note --helpහි--resolveසහ--unresolveflags දැක්වෙයි. ඒවා sub‑command වලට පරිවර්තනය කර ඇති නිසා, ලේඛනය වැරදි මඟ පෙන්වයි. - Bug template uses wrong env var – bug report template එක
DEBUG=trueකියලා පවසනවා, නමුත් CLI එකGLAB_DEBUGනැත්නම් deprecation warning දක්වයි. එමඟින් bug report එකට අමතර ත්රාසයක් එක්වේ. - Deploy‑key delete argument mismatch – කමාන්ඩ් එක
deploy-key deleteකිසිදු argument එකක් නොගතහොත් ID 0 සමඟ DELETE ඉල්ලීමක් යවයි. කේතයේMaximumNArgs(1)කියලා තිබුණත්, ලේඛනයේ<key-id>අවශ්යයි කියලා සඳහන් කරයි. - CI lint error handling –
ci lintකමාන්ඩ් එක URL එකක් ලබාගත් පසු status code එක පරීක්ෂා නොකර, 404 පිටුවේ HTML අන්තර්ගතය syntax error ලෙස පෙන්වයි. - Array parameter parsing bug –
glab api -F "topics=[my-topic, GitLab]"වැනි case එකේ capital letter හෝ hyphen ඇතුළත් වර්ගයක් array ලෙස නොගනී, JSON string එකක් ලෙස යවයි.
CI පසුබැසීම් 2ක්
පළමු ගැටළුව Windows පරීක්ෂණවල shlex.Split භාවිතයෙන් backslash escape වීමයි. t.TempDir() මගින් ලැබෙන පථය C:\Users\…\Temp\TestFoo\001 ලෙස අඩංගු වේ, නමුත් backslash ඉවත් වීමෙන් සම්පූර්ණ පථයක් නොව, සම්බන්ධිත වර්කින්ට්රි තුළ ලියයි.
දෙවැනි ගැටළුව HOME පරිසරය පමණක් වෙනස් කිරීමයි. Windows හි os.UserHomeDir() USERPROFILE පරීක්ෂා කරන බැවින්, HOME එකට වෙනස් කිරීම ප්රතිඵලයක් නොදෙයි, පරීක්ෂණය වැරදි තැනට යයි.
ශ්රී ලංකාවට ඇති වැදගත්කම
GitLab CLI වැනි open‑source මෙවලම් ශ්රී ලංකාවේ සොෆ්ට්වෙයාර් සංවර්ධකයන්ට, විශ්වවිද්යාල සිසුන්ට, සහ ස්ථානීය ව්යාපාරිකයන්ට විශාල අවස්ථාවක්. මෙවලම් වල ලේඛන ගැටළුවලට ඉක්මනින් ප්රතිචාර දක්වමින්, දෝෂ හඳුනාගැනීමේ ක්රමවේදය ඉගෙන ගැනීම, CI/CD පද්ධතියේ විශ්වාසනීයතාවය වැඩි කරයි. ඒ නිසා කේත ගුණාත්මකභාවය, නිෂ්පාදන වේගය, සහ දෝෂ නිවාරණ කාලය අඩු වේ. තවත්, GitLab CLI ගොඩක් Go සහ Cobra මත පදනම් වූ නිසා, ශ්රී ලංකාවේ Go භාෂා උපාධි සිසුන්ට නවතම ප්රොජෙක්ට් වලට සම්බන්ධ වීමට, සහ ප්රායෝගික අත්දැකීම් ලබා ගැනීමට හොඳ වේදිකාවක්.
අවසන් වශයෙන්, මෙවලම් ලේඛන අසම්මතතා හඳුනා ගැනීමේ ක්රමය (grep + help text පරීක්ෂාව) අනුගමනය කරමින්, දේශීය සංවර්ධක සමාජයත් එක්ක දෝෂ සමාලෝචනයේ සක්රීයත්වය වැඩි කරගත හැකිය. එමඟින් GitLab වැනි ව්යාපෘති වල දායකත්වය වැඩි වීමට, සහ ශ්රී ලංකාවේ තාක්ෂණික පරිසරය තවත් ශක්තිමත් වීමට හැකියාව ලැබේ.
මෙම පරීක්ෂා වාර්තාව GitLab Hackathon 2026 කට පෙර සම්පූර්ණ කර තිබේ, ඉදිරියේදී වැඩිදුර සංවර්ධනය සහ ප්රතිපෝෂණය අපේක්ෂා කරනවා.