ĂshtĂ« publikuar rilasimi i sistemit tĂ« ndĂ«rtimit Meson 0.58, i cili pĂ«rdoret pĂ«r ndĂ«rtimin e projekteve siç janĂ« X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME dhe GTK. Kodi Meson Ă«shtĂ« shkruar nĂ« Python dhe ofrohet nĂ«n licencĂ«n Apache 2.0.
Qëllimi kryesor i zhvillimit të Meson është të sigurojë shpejtësi të lartë gjatë procesit të ndërtimit, duke ruajtur gjithashtu lehtësinë dhe thjeshtësinë e përdorimit. Përdorimi i mjetit Ninja për ndërtimin e përparësishëm është vendosur në vend të utilitarit make, por mund të përdoren edhe backend të tjera si xcode dhe VisualStudio. Sistemi ka një menaxher të variablave multikontinentale të ndjesive që lejon përdorimin e Meson për ndërtimin e pakove për shpërndarjet. Rregullat e ndërtimit përcaktohen në një gjuhë të thjeshtuar të orientuar nga objekti, që dallohet për lehtësinë e leximit dhe është e kuptueshme për përdorruesin (sipas mendimit të autorëve, zhvilluesi duhet të harxhojë sa më pak kohë në shkruajtjen e rregullave).
Kros-kompilimi dhe ndĂ«rtimi janĂ« tĂ« mbĂ«shtetur nĂ« Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS dhe Windows duke pĂ«rdorur GCC, Clang, Visual Studio dhe kompilatorĂ« tĂ« tjerĂ«. ĂshtĂ« e mundur ndĂ«rtimi i projekteve nĂ« gjuhĂ« tĂ« ndryshme programuese, pĂ«rfshirĂ« C, C++, Fortran, Java dhe Rust. MbĂ«shtetet njĂ« modalitet ndĂ«rtimi inkremental, ku rindĂ«rtohen vetĂ«m komponentĂ«t qĂ« janĂ« lidhur drejtpĂ«rdrejt me ndryshimet e bĂ«rĂ« qĂ« nga ndĂ«rtimi i fundit. Meson mund tĂ« pĂ«rdoret pĂ«r tĂ« formuar ndĂ«rtime tĂ« ripĂ«rsĂ«ritshme, ku ekzekutimi i ndĂ«rtimit nĂ« mjedise tĂ« ndryshme çon nĂ« gjenerimin e skedarĂ«ve ekzekutiv tĂ« plotĂ«sisht identik.
Novitetet kryesore të Meson 0.58:
- NĂ« gjuhĂ«n Meson janĂ« implementuar operacione tĂ« ndĂ«rtimit tĂ« vargjeve tĂ« integruara. NĂ« vend tĂ« thirrjes sĂ« metodĂ«s format tani Ă«shtĂ« e mundur tĂ« futen vlerat direkt, pĂ«r shembull, nĂ« vend tĂ« âA string @0@ to be formatted @1@â.format(n, m)â, tani mund tĂ« thuhet âfâA string @n@ to be formatted @m@'â.
- Objekteve string iu Ă«shtĂ« shtuar metoda âreplaceâ pĂ«r tĂ« kryer operacionin e zĂ«vendĂ«simit tĂ« njĂ« nĂ«nvargu me njĂ« tjetĂ«r, pĂ«r shembull, âs = s.replace(âaaaâ, âbbbâ)â.
- ĂshtĂ« shtuar funksioni ârange(start, stop[, step])â pĂ«r tĂ« kthyer njĂ« objekt qĂ« mund tĂ« pĂ«rdoret nĂ« ciklin âforeachâ, pĂ«r shembull âforeach i : range(15)â.
- ĂshtĂ« implementuar metoda meson.add_devenv(), e cila lejon shtimin e objektit environment() pĂ«r tĂ« vendosur variablat e ambientit gjatĂ« pĂ«rdorimit tĂ« komandĂ«s âmeson devenvâ, pĂ«r shembull, pĂ«r tĂ« vendosur njĂ« variabĂ«l ambienti me rrugĂ«n drejt katalogut tĂ« plgineve.
- PĂ«r ambientet e zhvillimit Ă«shtĂ« ofruar njĂ« komandĂ« e re âmeson devenv -C builddir [<komanda>]â, qĂ« ofron mundĂ«sinĂ« pĂ«r tĂ« ekzekutuar njĂ« komandĂ« nĂ« njĂ« ambient tĂ« konfiguruar pĂ«r tĂ« ekzekutuar projekte nga katalogu i ndĂ«rtimit (pa instaluar).
- NĂ« mĂ«nyrĂ« tĂ« parazgjedhur, ndalimi i kalimit tĂ« parametrin â-pipeâ kur ekzekutohen tĂ« gjithĂ« kompilerĂ«t e mbĂ«shtetur Ă«shtĂ« pezullohet.
- ĂshtĂ« lejuar thirrja e meson.add_dist_script() nga nĂ«nprojektet.
- Ofrohet mundësia e thirrjes së përsëritur të metodave append() dhe prepend() për të njëjtin objekt environment().
- Në funksionin error() është lejuar caktimi i më shumë se një argumenti të ndarë me hapësirë (në përputhje me warning() dhe message()).
- ĂshtĂ« shtuar parametri ââskip-subprojectsâ pĂ«r tĂ« kaluar pĂ«rzgjedhshĂ«m instalimin e nĂ«nprojeteve.
Veçmas mund të përmendet projekti Boson, i cili ka si cak krijimin e një implementimi të portueshëm dhe të thjeshtë të gjuhës së skenarëve të ndërtimit Meson, i shkruar në C në vend të Python. Projekti është ende në fazën fillestare të zhvillimit dhe nuk është ende gati për ndërtimin e projekteve funksionale. Kodi shpërndahet nën licencën GPLv3 (Mesoni origjinal në Python ofrohet nën licencën Apache 2.0).
Burimi: opennet.ru
