ĂshtĂ« publikuar publikimi i sistemit tĂ« ndĂ«rtimit Meson 1.12.0, i cili pĂ«rdoret pĂ«r ndĂ«rtimin e projekteve si X.Org Server, Mesa, QEMU, Lighttpd, systemd, GStreamer, Wayland, GNOME dhe GTK. Kodi i Meson Ă«shtĂ« shkruar nĂ« gjuhĂ«n Python dhe ofrohet nĂ«n licencĂ«n Apache 2.0.
Qëllimi kryesor i zhvillimit të Meson është të sigurojë një shpejtësi të lartë të procesit të ndërtimit, së bashku me lehtësinë dhe thjeshtësinë e përdorimit. Në vend të utilitarit make, për ndërtimin e parazgjedhur përdoret mjeti Ninja, por është e mundur të përdoren edhe backend të tjerë, si Xcode dhe Visual Studio. Sistemi përmban një menaxher shumëplatformor të varësive, i cili lejon përdorimin e Meson për ndërtimin e pakove për distribuime. Rregullat e ndërtimit përcaktohen në një gjuhë të thjeshtë të orientuar nga subjekti, e cila karakterizohet nga lexueshmëri e lartë dhe është e kuptueshme për përdoruesin (sipërmarrësit e autorëve pretendojnë se zhvilluesi duhet të kalojë sa më pak kohë në shkruan rregullat).
Përkrahet ndërtimi i kryqëzuar dhe ndërtimi në Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS dhe Windows duke përdorur GCC, Clang, Visual Studio dhe kompilatorë të tjerë. E mundshme ndërtimi i projekteve në gjuhë të ndryshme programuese, duke përfshirë C, C++, Fortran, Java, D dhe Rust. Mbështetet modaliteti i ndërtimit inkremental, ku ripërtërihen vetëm komponentët që janë lidhur drejtpërdrejt me ndryshimet e bëra që nga ndërtimi i kaluar. Meson mund të përdoret për të formuar ndërtime të përsëritshme, ku nisja e ndërtimit në mjedise të ndryshme çon në gjenerimin e skedarëve ekzekutivë që janë plotësisht identikë.
Novitete kryesore të Meson 1.12:
- Shtuar mbështetje për skedarin CACHEDIR.TAG, që vendoset në katalogun e ndërtimit për të përjashtuar përfshirjen në backup-e të skedarëve temporarë të gjeneruar gjatë ndërtimit.
- Shtuar objekti ndërtues clippy-json, i cili aktivizon lintern Clippy dhe formon informacione për paralajmërimet dhe gabimet për Rust-analyzer në formatin JSON.
- Shtuar objekti dhe funksioni default(), të destinuara për të rikthyer argumentet emëruar në vlerat e tyre të paracaktuara.
- Në metodën generator.process() është shtuar argumenti 'depends' për lidhjen e drejtpërdrejtë të skedarëve të gjeneruar me qëllimet e tjera të ndërtimit.
- Shtuar metoda to_list() në objektin 'include_directories' për të treguar një listë të rrugëve absolute të drejtorive të incizuara.
- Shtuar funksione pĂ«r konvertimin e vargjeve nĂ« numra tĂ« plotĂ« dhe anasjelltas â str.to_int() dhe int.to_string().
- NĂ« komandĂ«n 'meson format' Ă«shtĂ« shtuar opsioni 'âsubprojects', qĂ« pĂ«rdoret sĂ« bashku me 'ârecursive' pĂ«r tĂ« pĂ«rfshirĂ« nĂ«nprojekte nĂ« analizen rekursive.
- Shtuar mbështetje për platformat OpenHarmony dhe HarmonyOS (OHOS), të cilat trajtohen si Android.
- Për t'i definuar qëllimet e tyre të ndërtimit dhe testet, është e lejuar specifikimi i programeve të jashtme në argumentet e emëruara 'input' dhe 'depends'.
- Shtuar mundësia për ndërtim të veçantë të nënprojekteve për kompjuterin e ndërtimit dhe platformën përfundimtare përmes specifikimit në subproject() dhe meson.override_find_program() të argumentit të emëruar 'native'.
- NĂ« komandĂ«n 'meson test' Ă«shtĂ« shtuar opsioni 'âexclude' pĂ«r tĂ« skipuar teste tĂ« veçanta.
- Mbështetja për Python 3.7, 3.8 dhe 3.9 është ndalur.
Burimi: opennet.ru
