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. ChangeLog ========= 2016-11-22 Rico Tzschichholz <[email protected]> Release 0.35.1 2016-11-21 Rico Tzschichholz <[email protected]> gstreamer-1.0: Make ElementFactory.get_static_pad_templates fully "unowned" https://bugzilla.gnome.org/show_bug.cgi?id=774791 2016-11-20 Rico Tzschichholz <[email protected]> vapi: Update GIR-based bindings 2016-11-19 Carlos Garnacho <[email protected]> codegen: Use GTask instead of GSimpleAsyncResult if 2.36 target is selected GTask brings some differences compared to GSimpleAsyncResult. Most namely, g_task_return*() operations perform at once the async result data asignment and the caller's main context activation. This is something that has to be done exactly once, so the code flow has slight changes to ensure that. Also, the async operation data used to be attached early through g_simple_async_result_set_op_res_gpointer, only to be maybe replaced by the real return data. If GTask is being used, we set this data through g_task_set_task_data(). There's code out there relying on immediate return here when state is !=0. As GTask always defers the finalization to an idle in its main context, ensure the source is dispatched and the task completed before returning. https://bugzilla.gnome.org/show_bug.cgi?id=763345 2016-11-16 Rico Tzschichholz <[email protected]> gtk+-4.0: Update to 3.89.0+48e7f419 2016-11-13 Rico Tzschichholz <[email protected]> vapi: Update GIR-based bindings gtk+-4.0: Update to 3.89.0+2520662d 2016-11-12 Rico Tzschichholz <[email protected]> Fix build with -Werror=redundant-decls Fix build with -Werror=enum-compare 2016-11-11 Rico Tzschichholz <[email protected]> tests: Enable -Werror=redundant-decls codegen: Don't write declaration of CreationMethod for compact-classes twice https://bugzilla.gnome.org/show_bug.cgi?id=772661 ccode: Fix and disable deprecating EnumValue This still requires GCC 6.0 and later to work. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=47043 Move "blurb", "nick" and "notify" into Property Transform CCode*'s "deprecated" into using CCodeNode's "modifiers" 2016-11-10 Rico Tzschichholz <[email protected]> tests: Add missing main() in bug641418-*.test codegen: g_free is already NULL-safe codegen: Don't implicitly initialize local variables with an initializer Don't initilize local variable if not requested codegen: Remove unused create_local() codegen: Make get_temp_variable() default to init=false Revert "Always initialize temp variables to fix fatal warnings of GCC 4.8" This reverts commit eeb861dfba147bc37cfc7a9c22e1b582cf20ff31. 2016-11-09 Rico Tzschichholz <[email protected]> Add G_GNUC_PRINTF/SCANF attribute for Printf/ScanfFormat functions https://bugzilla.gnome.org/show_bug.cgi?id=710862 2016-11-08 Rico Tzschichholz <[email protected]> Transform CCodeParameter's "format_arg" into CCodeNode's "modifiers" Add CCodeNode "modifiers" and transform CCodeFunction's "attributes" to it vala: Clean up PropertyAccessor API 2016-11-08 Alistair Thomas <[email protected]> vala: check a property has an accessor and/or a mutator Fixes https://bugzilla.gnome.org/show_bug.cgi?id=773956 2016-11-07 Rico Tzschichholz <[email protected]> gtk+-4.0: Update to 3.89.0+fa7d77d4 codegen: Add G_GNUC_FORMAT attribute for FormatArg function-pointers tests: More cases of FormatArg functions 2016-11-07 Jürg Billeter <[email protected]> codegen: Add G_GNUC_FORMAT attribute for FormatArg functions https://bugzilla.gnome.org/show_bug.cgi?id=774060 tests: Enable -Werror=format-nonliteral 2016-11-07 Rico Tzschichholz <[email protected]> vala: Pass through the format-literal https://bugzilla.gnome.org/show_bug.cgi?id=774060 2016-11-07 Richard Wiedenhöft <[email protected]> Fix broken destruction of null-terminated arrays in async data structs https://bugzilla.gnome.org/show_bug.cgi?id=762819 2016-11-06 Rico Tzschichholz <[email protected]> doap: Add description as required Drop obsolete MAINTAINERS file Add myself to doap Update bugreport and package urls 2016-11-05 Timm Bäder <[email protected]> method: Print encountered type if return types mismatch If a class overrides a method of a base type, print both the encountered return type and the return type expected by the base class. https://bugzilla.gnome.org/show_bug.cgi?id=769501 2016-11-05 Rico Tzschichholz <[email protected]> gtk+-4.0: Fix cheader_filename for Gdk and update to 3.89.0+a47fb1c4 2016-11-04 Andrea Del Signore <[email protected]> girwriter: Use the correct tag- and element-name for an annotation The correct syntax is <attribute name=".." value=".."/> https://bugzilla.gnome.org/show_bug.cgi?id=769597 2016-11-03 Severin Heiniger <[email protected]> codegen: Allow underscores in type parameter names https://bugzilla.gnome.org/show_bug.cgi?id=644938 2016-11-03 Jürg Billeter <[email protected]> tests: Enable -Werror=format-security codegen: Avoid temporary variables for calls to [FormatArg] methods This prevents bogus C compiler warnings with -Wformat-nonliteral. https://bugzilla.gnome.org/show_bug.cgi?id=769229 Do not use non-literal printf format strings Add [FormatArg] attribute to Parser.get_error glib-2.0: Add [FormatArg] attributes to gettext functions Support [FormatArg] attribute for parameters This attribute specifies that the method takes and returns a printf or scanf format string without modifying the order or types of expected arguments, e.g., to translate the format string. This allows the compiler to check the printf/scanf arguments. 2016-11-03 Rico Tzschichholz <[email protected]> Fix deprecation of class/struct fields Respect the "deprecated" attributes given to class and struct fields, while actually adding G_GNUC_DEPRECATED to their declaration. codegen: Simplify get_enum_value_canonical_cconstant() codegen: Simplify get_signal_canonical_constant() glib-2.0: Add simple fast-path to string.replace() vapi: Update GIR-based bindings gtk+-4.0: Update to 3.89.0+c9a313a1 2016-11-01 Rico Tzschichholz <[email protected]> parser: Cache current token if possible codegen: Mark GLibValue as internal 2016-11-01 Jürg Billeter <[email protected]> Check printf arguments of object creation expressions 2016-11-01 Rico Tzschichholz <[email protected]> vapi: Add unstable bindings for gtk+-4.0 (based on 3.89.0+3c1f7267) Don't create constant Regex on demand and use static field where possible ccodewriter: Use private _bol field instead of property writer: Some string optimizations field: Drop unused methods vala: Add missing TokeType cases for to_string() Avoid some string copying 2016-10-30 Rico Tzschichholz <[email protected]> ccode: Replace if-else-tree with switch vala: Avoid superfluous string copying codegen: Some simplifications Use more "...".printf to concat strings codegen: Drop superfluous dynamic-type cast webkit2gtk-4.0: Update to 2.15.1 gdk-3.0: Update to 3.22.2+0ad5d51d 2016-10-27 Rico Tzschichholz <[email protected]> vapi: Update GIR-based bindings 2016-10-25 Rico Tzschichholz <[email protected]> build: Conditionally adjust VALAFLAGS in case of proper bootsrapped builds This adds --hide-internal to VALAFLAGS to allow symbols to be marked 'internal' in Vala source files and not appear in the dynamic symbol table of libvala. The build system checks for minimum valac version to fullfill required support of needed VALAFLAGS. https://bugzilla.gnome.org/show_bug.cgi?id=771920 2016-10-25 Evan Nemerson <[email protected]> codegen: Only emit notify signals if the value actually changed https://bugzilla.gnome.org/show_bug.cgi?id=631267 2016-10-24 Rico Tzschichholz <[email protected]> gdk-3.0: Update to 3.22.1+a1115c05 2016-10-20 Luca Bruno <[email protected]> Add explicit copy method for arrays https://bugzilla.gnome.org/show_bug.cgi?id=650663 2016-10-20 Matthias Berndt <[email protected]> vapi: Add missing type parameters for delegates https://bugzilla.gnome.org/show_bug.cgi?id=772204 Download ======== https://download.gnome.org/sources/vala/0.35/vala-0.35.1.tar.xz (2.63M) sha256sum: 9ae6cdefd3409eabe4f072921844dc31f9d4488211b6d077fa48855fd00053fd _______________________________________________ ftp-release-list mailing list [email protected] https://mail.gnome.org/mailman/listinfo/ftp-release-list
