vala 0.36.15



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



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