A Vala egy nyílt forráskódú, ingyenes és korszerű programozási nyelv és szoftvermegoldás, amelyet az offsetből terveztek, hogy új programozási lehetőségeket biztosítson a GNOME fejlesztőknek. Ez egy fordító a GObject típusú rendszer számára, amely lehetővé teszi a GNOME fejlesztőknek, hogy megdöbbentő alkalmazásokat hozzanak létre.
Jellemzők áttekintése
A legfontosabb funkciók közé tartozik az interfészek, a tulajdonságok, a jelek, a foreach, a lambda kifejezések, a típusváltozatok a helyi változókhoz, a generikusok, a nem nulla típusok, a támogatott memóriakezelés, a kivételkezelés, valamint a modulok a.k.a.
Könnyedén írjon komplex objektum-orientált kódot
A Vala fordítóval, mint fejlesztő, képes lesz könnyedén írni komplex objektumorientált kódot, miközben a memóriaigényeket alacsony szinten tartja, és fenntartja a szabványos C ABI és API-t.
Lehetővé teszi a meglévő C könyvtárakhoz való hozzáférést
A projekt úgy lett megtervezve, hogy hozzáférést biztosítson a meglévő C könyvtárakhoz, különösen a GObject alapú könyvtárakhoz, anélkül, hogy futásidejű kötésekre lenne szükség.
Ez tökéletes a GTK + és a GNOME számára
A Vala egy parancssori fordító és programozási nyelv. A GTK + és a GNOME-val dolgozó fejlesztők képesek lesznek használni a Vala-t a kód megírásához és összeállításához.
Ez a C ++, a C, a C #, a Python, a D és a Java hatással van
A Vala programnyelvét a jól ismert és széles körben használt C, C ++, D, Python, C # és Java programozási nyelvek befolyásolták. Ez egy többplatformos szoftver, amely könnyen átvihető más operációs rendszerekre.
Az IDE programok széles körét támogatja
Egy másik érdekes tulajdonság a különböző IDE (Integrated Development Environment) programok, köztük Anjuta, Valencia, Geany, Emacs, MonoDevelop, NetBeans, Val (a) IDE, Sublime Text, Vim, Vala Toys for Gedit, RedCar, TextMate és Valama.
Az elérhetőség és a támogatott architektúrák
A Vala csak forrásarchívumként van elosztva. Ez azt jelenti, hogy a felhasználónak konfigurálni és fordítani kell a kódot a telepítés előtt. Természetesen könnyen telepíthető bármilyen GNU / Linux disztribúcióra az alapértelmezett szoftvercsomagokból. Mind a 32 bites, mind a 64 bites architektúrák jelenleg támogatottak.
Az újdonság ebben a kiadásban:
- Különféle hibajavítások:
- codegen: Hívjon ref_sink-t a generikus típusú [# 655] objektumokhoz
- codegen: Szabad hibák a GDBusMethodInvocation [# 657]
- girparser: Valójában megoldja a típus-argumentumokat, hogy szükség esetén be tudja dobni őket
- vala: Adjon hozzá konszerneket / módszereket a könyvtári verzió letöltéséhez és ellenőrzéséhez [# 304]
- Kötések:
- glib-2.0: Adja hozzá az Array.remove * () csomagolást, hogy elkerülje a generikus elemek kiszivárgását
- glib-2.0: Add (u) long.parse / try_parse () [# 649]
- gstreamer: frissítés 1.15+ git masterből
- gtk + -3.0: Frissítés 3.23.2 + 6b6e53fd-re
- gtk + -4.0: Update to 3.94.0 + 4e868584
Újdonság a 0.40.7 verzióban:
- Különféle javítások és hibajavítások:
- Bugtracker linkek frissítése https://gitlab.gnome.org/GNOME/vala/issues
- CODEGEN:
- Kezelje a [# 520] mezők delegate_target attribútumát
- A glib gyűjtemények ingyenes generikus elemei [# 694765]
- Fix figyelmeztetés a g_source_new () forrás_funcs paraméterére
- Valójában kezeljük a GLib.Source-ot kompakt osztályként
- A GLib.Source absztrakt módszereit eltérő módon kezelik [# 641]
- Állandóan használja a gpointeret a küldött célcímekhez
- Bizonyos delegált típusú ellenőrzési minták egyesítése
- Használja a default_init-t a base_init helyett a [# 699550] felületek regisztrálásakor
- girparser: Támogatás hozzáadása bool delegate_targethez [# 520]
- girwriter:
- Kimenet elavult = & quot; 1 & quot;
- csak konstrukciójú tulajdonságok nem rendelkeznek beállító módszerrel
- Ne írjon semmilyen egyedi attribútumot [# 608]
- valadoc: Fix a TreeBuilder.create_array () a halmozott rétegekhez
- Kötések:
- bőbeszédű-2.0:
- Ne jelölje ki az egyszerű típusú outparametereket nullable [# 634] -ként
- A Source.attach () alapértelmezetten használja az alapértelmezett MainContext-ot
- A Bytes.slice () használatával a memória hatékony Bytes.from_bytes () [# 638]
- Fix Bytes.with_free_func ()
- gio-2,0:
- Mark ActionEntry.parameter_type / state mezők nullable [# 632]
- A DBus * VTable delegált mezők nem tartalmaznak implicit célmezőket
- Apply delegate_target = false az ActionEntry visszahívásokkal és gyengének teszi őket [# 630]
- Alapértelmezés az összes io_priority paraméterhez
- gstreamer: Cherry - válasszon néhány javítást a 0.42-ből, add gst-editing-services-1.0
- gtk + -3.0: Frissítés 3.22.30 + 9ac7f906-ra
- gtk + -4.0: frissítés 3.93.0 + 29fee2e8-ra
- webkit2gtk-4.0: Frissítés 2.21.4-re
- Frissítse a GIR alapú kötéseket
A
Újdonság a verzióban:
- Különféle hibajavítások:
- Fix lánc-up regresszió valódi, nem null struktur paraméterekkel [# 791785]
- A CodeContext használatával [# 712694] és a parse_file () egyedi meghívásait [# 791936]
- elemző: Elfogadhat vesszővel elválasztott listát a [# 614015] kapcsolók esetében [/ li>
- Kötések:
- Vegye le az évek óta feltöltött kötéseket
- gedit 3 [# 776021], libgnome-kulcstartó [# 776022],
- gtksourceview-3.0 [# 776023], libgdata [# 776024], könyvesbolt-2.0 [# 776025]
- glib-2.0: Add GLib.OPTION_REMAINING és GLib.OptionFlags.NONE
- gstreamer-1.0: Update from 1.13+ git master
- gtk + -2.0: Megjelöl MessageDialog konstruktor paraméter, message_format, mint nullable [# 791570]
- gtk + -4.0: frissítés 3.93.0 + 6aeae2c8-ra
- webkit2gtk-4.0: Frissítés 2.19.3-ra
Az újdonság a 0.39.1-es verzióban:
- Fénypontok
- Figyelmeztetés jelentése, ha az attribútum típusa nem kompatibilis a GLib.Object [# 693932] paranccsal
- Engedélyezze a kompatibilis küldötteket a signal.connect () [# 787521] átviteléhez
- Lehetővé teszi az érték nélküli értékek értékét
- Kerülje a temp-var használatát néhány callables számára, amelyek visszatérnek a ValueType-be, és hozzáférnek a / ref paraméterekben [# 789071]
- A reformáció a jobb olvashatóságot [# 688447] generált forrásnyilatkozatokat és definíciókat eredményezte
- Különféle hibajavítások:
- Az array_length_cexpr használatával támogatja a rögzített tömböket a visszatérési értékekhez [# 784691]
- A vala interpeter-mód [# 663070] argumentumainak megfelelő értelmezése
- A névhossz érvénybe állítása & gt; = 3 a GType [# 764041] használatával létrehozott elemekhez
- Hibajelentés a hiányzó típusú paraméterre a [# 587905] csatolási típusnál
- Boolean "use_inplace" ccode attribútum hozzáadása a [# 750840]
- A tulajdonos / tulajdonában lévő kulcsszó előfordulásának kezelése
- A módszernek kompatibilis hibát kell eldobnia, ha a célfeladó egy -ot dob
- Fedezze fel az érvénytelen tag-hozzáférést a példánymezőhöz [# 790903]
- Javítja a nem megfelelő típusú felülmúlási módok hibajelzését
- Valadoc
- Nyugtázza az objektumok lehetséges tulajdonságait [# 784705]
- Fix végzetes hiba a GtkdocRenderer.visit_symbol_link () [# 790266]
- Kötések:
- glib-2.0: Használja a (u) int16 / (u) int32 / (u) int32 [# 693932] típusú típusazonosítót / marshaller-típust
- glib-2.0: Adja hozzá az opcionális 'unparsed' paramétert * .try_parse () [# 774124]
- gobject-2.0: Adjon hozzá néhány hiányzó szimbólumot
- gstreamer-1.0: Bind GST_TIME_ARGS, GST_STIME_ARGS makrók [# 750840]
- gstreamer-1.0: Bind GST_DEBUG_BIN_TO_DOT_FILE / * _ WITH_TS [# 785215]
- gstreamer-1.0: Update from 1.13+ git master
- gtk + -3.0: Frissítés 3.22.26 + 9ce824d3-ra
- gtk + -4.0: Split Gsk.RenderNode több osztályba
- gtk + -4.0: frissítés 3.93.0 + 2d797dd8-ra
- webkit2gtk-4.0: Frissítés 2.19.2-re
Az újdonság a 0.38.3 verzióban:
- Különféle hibajavítások:
- codegen: Prioritás: "array_length = true" over "array_null_terminated = true" [# 788775]
- codegen: Kerülje az esetleges konfliktusokat a belső tulajdonsággal / jel határozza meg [# 788964]
- Kötések:
- gio-2.0: Jelenítse meg a g_task_get_source_object Task.get_unowned_source_object
- gstreamer-1.0: Update from 1.13+ git master
- gtk + -4.0: frissítés 3.92.1-re
- libxml-2.0: DTD-módszerek hozzáadása [# 789442]
Az újdonság a 0.38.2 verzióban:
- Különféle kötési frissítések:
- gstreamer-1.0, gtk + -3.0, gtk + -4.0: frissítés a git masterből
- gnutls: A tanúsítvány free_function ccode attribútumának javítása [# 788181]
Az újdonság a 0.38.1 verzióban:
- Különféle hibajavítások:
- valadoc: Ne használja az 'stderr' változónevet [# 787305]
- codegen: Próbáljon meg több egyedi belső definíciót használni a [# 787436] tulajdonságokhoz
- vala: A használt attribútumok listájának frissítése
- módszer: Használjon prototípus-karakterláncot a visszatérési típusú eltérések hibajelentéseihez
- Kötések:
- glib-2.0: Fix MainContext.check (), OptionEntry [] paraméterek null-terminated, Bind g_convert_with_backback () és g_convert_with_iconv ()
Az újdonság a 0.37.1 verzióban:
- Főbb jellemzők:
- Ne figyelmeztessen az elavult szimbólumokra, ha a telepített_verzió régebbi
- Add --gresourcesdir opció [# 783133]
- Különféle hibajavítások:
- gdbus: Ne szivárogjon beágyazott HashTable-t a deserializációra [# 782719]
- Végül rögzítse az aszinkron hozamokkal [# 741929]
- A nem-null kezelést a (# 611223) kifejezés együttes megjelenítésével kezeli
- A task_complete jelzőt a & lt; 2,44 több, mint & gt; = 2,44 [# 783543]
- A nullázható ValueType megköveteli, hogy a POINTER mint rendezői aláírás [# 783897] legyen
- A NoAccessorMethod attribútum csak a gobject-tulajdonságokra engedélyezett
- girparser: A küldött-alias objektum nélküli elemzése
- fordító: Használja az API_VERSION helyett a PACKAGE_SUFFIX eltávolítását
- girwriter: írjon hossz- paramétereket a sorok & gt; 1 [# 758019]
- Kötések:
- gio-2.0: A DataInputStream.read_line_utf8 * [# 783351] alapértelmezett "length = null"
- gobject-2.0: Add GLib.ParamSpecPointer
- poppler-glib: frissítés 0.54.0-re
- gstreamer-1.0: Különféle kötési javítások
Az újdonság a 0.36.3-as verzióban:
- Különféle hibajavítások:
- szkenner: a többjellel rendelkező megjegyzések után az oszlopérték számításának javítása [# 652899]
- codegen: Unref GLib.AsyncResult a coroutines hibákra [# 641171]
- Tartsa meg az eredmény-változó inicializálását a struktur konstruktorokhoz [# 782056]
Az újdonság a 0.36.1 verzióban:
- Különféle hibajavítások:
- Mindig vegye figyelembe az önmagával kompatibilis módszert [# 773135]
- Argumentumok végrehajtása - ellenőrizze a tényleges .end () metódus-aláírást [# 684208]
- Kevésbé javítja a lamdba-kifejezés hibáját a cél-típusú eltérésekkel
- A delegált inicializáló javítása például [# 683925] mezőhöz
- Ne szivárogjon a cél-hivatkozás a tulajdonosok delegálásánál / kijelölésénél [# 780426]
- GIR értelmező és író:
- girparser: hozzáadása megsemmisítési argumentum a metaadatokhoz [# 750838]
- vapigen: Adja hozzá a -tadpkg opciót, mint a valac
- Kötések:
- gstreamer-1.0: Fix Pad.set _ * _ függvény () kötések [# 750838]
- glib-2.0: hiányzó makrókészlet és állandók hozzáadása, unichar.to_string nem ad vissza null
- gtk + -2.0, gtk + -3.0: A Widget.intersect () kivágás metszéspontjának jelölése
- gtk + -4.0: frissítés 3.90.0-ra
Hozzászólás nem található