About vala ========== valac, the Vala compiler, is a self-hosting compiler that translates Vala source code into C source and header files. It uses the GObject type system to create classes and interfaces declared in the Vala source code.
The syntax of Vala is similar to C#, modified to better fit the GObject type system. Vala supports modern language features as the following: Interfaces, Properties, Signals, Foreach, Lambda expressions, Type inference for local variables, Generics, Non-null types, Assisted memory management, Exception handling, Type modules (Plugins) Vala is designed to allow access to existing C libraries, especially GObject-based libraries, without the need for runtime bindings. All that is needed to use a library with Vala is an API file, containing the class and method declarations in Vala syntax. Vala currently comes with bindings for GLib and GTK+ and many others from the GNOME Platform. Using classes and methods written in Vala from an application written in C is not difficult. The Vala library only has to install the generated header files and C applications may then access the GObject- based API of the Vala library as usual. It should also be easily possible to write a bindings generator for access to Vala libraries from applications written in e.g. C# as the Vala parser is written as a library, so that all compile-time information is available when generating a binding. News ==== * Various improvements and bug fixes: - Update bugtracker links to https://gitlab.gnome.org/GNOME/vala/issues - codegen: + Handle delegate_target attribute of fields [#520] + Free generic elements of glib collections [#694765] + Fix warning for source_funcs parameter of g_source_new() + Actually treat GLib.Source as compact class + Consistently use gpointer for delegate targets + Unify some delegate-type check patterns - girparser: + Add support for bool delegate_target [#520] + Allow changing the type of constants using metadata [#643] - girwriter: + Output deprecated="1" + construct-only properties don't have a setter method + Don't write any custom attributes [#608] + Add boolean GIR visible attribute to allow skipping symbols - Fix links in the Manual - Allow TypeModule subclasses as parameter-type in module-init-method [#648] - vala: Report error for error-domains without any code - parser: Accept "empty" enums/error-domains [#253] - codewriter: Output bodies of code-blocks if in VAPIGEN mode [#253] * Bindings: - glib-2.0: + Do not mark simple-type out-parameters as nullable [#634] + Make Source.attach() use the default MainContext by default + Make Bytes.slice() use the memory-efficient Bytes.from_bytes() [#638] + Fix Bytes.with_free_func() - gio-2.0: + Mark ActionEntry.parameter_type/state fields as nullable [#632] + Delegate fields of DBus*VTable do not have implicit target fields + Apply delegate_target = false on ActionEntry callbacks and make them weak [#630] + Add default to all io_priority parameters + Add custom IOError.from_errno() to make it work as expected [#253] - gobject-2.0: Add lower_case_csuffix attributes to Type* symbols - gstreamer-rtsp-server-1.0: Update from 1.12+ git master [#653] ChangeLog ========= https://download.gnome.org/sources/vala/0.36/vala-0.36.15.changes (4.58K) Download ======== https://download.gnome.org/sources/vala/0.36/vala-0.36.15.tar.xz (2.75M) sha256sum: 3d9613e6fd95b3bf225583466aa3d6affa80345812b8e0cd3b54fc0897e49686 _______________________________________________ ftp-release-list mailing list ftp-release-list@gnome.org https://mail.gnome.org/mailman/listinfo/ftp-release-list