vala 0.46.2



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:
  - vala:
    + Report dedicated error message for params-array parameter mismatch
    + Output "params" qualifier of parameters
    + Allow to override virtual interface implementations [#852]
    + Perform stricter compatibility check for delegates
  - codegen: Directly use "memmove()" while g_memmove() is deprecated
  - valadoc: Explicitly pass --pkg libgvc
  - tests: Add more tests to increase coverage

 * Bindings:
  - gio-unix-2.0: Fix DesktopAppInfo.get_string(), UnixFDMessage.steal_fds()
  - glib-2.0: DateTime.from_iso8601() can take a null TimeZone
  - gobject-2.0: Some cherry-picking from GIR generated binding
  - gstreamer: Update from 1.17.0+ git master
  - gtk4: Update to 3.96.0+bcea9652
  - gtk4: Constructors of Gtk.MediaFile needs to be static functions
  - sqlite3: Fix use of possibly unassigned parameter `errmsg'


ChangeLog
=========
https://download.gnome.org/sources/vala/0.46/vala-0.46.2.changes  (2.00K)

Download
========
https://download.gnome.org/sources/vala/0.46/vala-0.46.2.tar.xz (3.21M)
  sha256sum: 92070393e8102da29e07b29fcb808d021600a25f8a2a69c852470ec8d97740bc



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]