Vala 0.43.1 =========== * Highlights: - Emit G_DEFINE_AUTOPTR_CLEANUP_FUNC() for classes (requires glib 2.44) [#670] - Enforce "return yield ..." syntax to be expected [#675] - Drop deprecated syntax support of += and -= for signals [#676] - Drop deprecated syntax support of # modifier and operator [#677] - Allow disabling the build of valadoc [#596] - Add support for SingleInstance attribute for GObject classes [#647] - Don't allow to declare array parameters with "type array[]" [#163] - Collect error_types on demand to allow transformations - Check for matching ownership of type-arguments [#696] - Add profile specific delegate target/destroy types - Don't explicitly add glib headers, the use of symbols will do that [#623] - Add --enable-debug configure option - Move setting of default defines for VALA_0_XX and GLIB_2_XX to CodeContext - Add support for delegate parameters in signals [#205] - Admit that structs are emtpy even with a static property [#446] * Various improvements and bug fixes: - codegen: + Fix method pointer cast if instance isn't at first position + Transfer ownership of compact class to DestroysInstance method [#645] + Add destroy function for GLib.Array [#572] + Fix canonical string for quark of error domains + Make sure to include declarations for delegate typed parameters + Don't emit type_id for enum in non GOBJECT profile + Don't emit unused temp variable for element access assignments + Actually create method cast for base interface method as needed + Mark needle parameter of internal array-contains methods as const [#504] + Emit initializer for enum-value into wanted declaration space [#167] + Add void to delegate typedef declarations without parameters + Deprecate "finish_function" and "ctype" ccode-attribute + Fix get_ccode_name() for properties + Add ccode getters for GType functions of Classes and Interfaces + Don't allow more than one consecutive empty lines in generated code - vala: + Copy instance_pos argument from virtual/abstract base methods [#540483] + Compact classes don't allow private/class fields and to lock fields + Use comment which was already retrieved in parse_declaration() + Add missing re-check guards for Do/For/WhileStatement and SwitchLabel + Type check for errors require an error expression [#362] + Make check_arguments() more verbose and don't bail on first error [#438] + Don't emit member access of assignments on static properties [#573] + Use clearer error message for automatic properties in interfaces [#656] + Admit that structs are emtpy even with a static property [#684] + Let UsingDirective hold reference to UnresolvedSymbol instances only + Add ArrayType.length_type and ArrayCreationExpression.length_type [#607] + Remove hardcoded "int" length type and use ArrayType.length_type [#607] + Use is_weak() for type-arguments in DataType.to_qualified_string() - girwriter: Write glib-type attributes for Enums/Structs with type_id - girparser: Skip "source-position" elements and docs in transparent union - valadoc: + Match property signature with vala's codewriter + Sort symbols and members where possible + Actually assign type_id of Api.Structs + Add type_id to Api.Enum/Interface + Skip package dependency if target directory already exists + Fix a few errors and warnings in stylesheet + Adjust stylesheet to unbreak Epiphany [#644] + Several API clean ups + Add --fatal-warnings command line option - docs: Use Markdown for README and include build instructions - testrunner: Compile and run tests separately and pass buildsystem's CC through to valac, add various -Werror=* build cflags * Bindings: - gio-2.0: Add missing File.new_build_filename() - glib-2.0: Add missing Array.set_clear_func() binding - glib-2.0: Avoid double-free in GLib.Array if clear_func is set - glib-2.0: Drop g_object_unref which is part of gobject-2.0 - gobject-2.0: Attribute all symbols with cheader_filename = "glib-object.h" - gdk-x11-3.0,gtk+-3.0: Update to 3.24.1+356f1f59 - gtk+-3.0: Treat Gtk.IconInfo as GLib.Object which it is since 3.8 [#663] - gtk+-4.0: Update to 3.94.0+8de1ba2c - gstreamer: Update from 1.15+ git master - posix: Add CommandPipe as a sub-type of FILE [#645]