Vala Releases
Vala 0.42.3
released on November 7, 2018
Changes
- Various improvements and bug fixes:
- codegen:
- Initialize internal temp-variables used as reference parameter
- Improve ccode for fixed-length array parameters (#163)
- Fix regex literal compile flags
- Add prototype for *_register_type() function
- Don't emit *_free() of derived compact classes
- Add prototype for *_new() of abstact compact classes
- girwriter: Fix ctype of out/ref and array parameters
- ccode: Fix typo and actually check "end_decls" (#672)
- abstract syntax tree:
- libvaladoc: Add "unlock" to keywords in Highligher
- posix:
- Add replacement for G_(BEGIN|END)_DECLS
- Don't check for GLib.Variant casting
- testrunner: Reset $run_prefix before generating next test script
- build: Unconditionally add conditional VALAFLAGS to make bootstrap
- doc: Fix build of internal-api-docs
- manual: Update from wiki.gnome.org
- codegen:
- Bindings:
- glib-2.0: Computing length once is enough in string.to_utf8()/splice()
- glib-2.0: Add binding for g_test_add()
- glib-2.0: Add array length to string.skip (#695)
- gio-2.0: Result of DBusMessage.get_header() is unowned
- gobject-2.0,gtk+-*.0: Fix some GLib.Value out/ref parameters
- gstreamer: Update from 1.15+ git master
- gtk+-4.0: Update to 3.94.0+b4b30b49
Vala 0.42.2
released on September 24, 2018
Changes
- Various improvements and bug fixes:
codewriter: Prepend "yield" if is_yield_expression is set on MethodCall and ObjectCreationExpression
- codegen: Fix typo in is_pure_ccode_expression() [#673]
- gobject-introspection: Fix use after free in scanner [#674]
vala: Check if ArrayType supports its given element-type in analyzer pass
- valadoc: Fix some string escaping which gettext complains about
- Bindings:
- Update GIDL-based bindings to fix unsupported type-arguments
- glib-2.0: Add feature_test_macro details for Time struct's methods
glib-2.0: Set DateTime.now () to use local time zone as the default
- gstreamer: Update from 1.15+ git master
- gtk+-4.0: Update to 3.94.0+d90e2733
libxml-2.0: Add missing context parameter in OutputWriteCallback
- x11: Add binding for XCreateSimpleWindow
Vala 0.42.1
released on September 17, 2018
Changes
- Various improvements and bug fixes:
- vapigen: Warn if the library argument doesn't match any package attribute
- Bindings:
- glib-2.0: Add some 2.58 symbols
- gtk+-4.0: Update to 3.94.0+f3e6d00d
- Add gnome-desktop-3.0 bindings
- Remove libgda-4.0, libgda-report-4.0 bindings
- Update GIR-based bindings
Vala 0.42.0
released on August 31, 2018
Changes
- Highlights
- Reintroduce POSIX profile
- parser: Add support for explicit "unlock" syntax
- vala: Support anonymous definitions of delegates in bindings
- codegen:
Support automatic properties as GtkChild
- Apply G_PARAM_EXPLICIT_NOTIFY on properties with "notify = false"
- Drop support for non-auto property initializer in gobjects
- Avoid using deprecated "g_type_class_add_private"
- Various bug fixes:
analyzer: Break cyclic references of BasicBlock
- build: Correctly quote square brackets in regular expression
- codegen:
- Fix floating reference regression with Variants
- Call ref_sink on Object.new_valist/new_with_properties if needed
- Call ref_sink on objects passed to generic type
- Free errors after returning them on GDBusMethodInvocation
- Don't apply ref_sink_function if target_type is floating_reference
Fix invocation of abstract/virtual methods with NoWrapper in compact classes
- Don't include the full absolute path in line directives
- Add source_reference to unsupported floating reference error
- girparser: Actually resolve type-arguments to be able to box them if needed
- libvaladoc: Replace void* with corresponding Vala API
- manual: Update from wiki.gnome.org
- vala:
- Don't bail early on property with not supported default value
- Add consts/methods to retrieve and check library version
- Constants and signals are not lockable
- Treat floating method-return-type as nullable if error may be thrown
- Transfer floating-reference attribute while casting
Break reference chain between DataType and Symbol if possible
- Report error for invalid base access in method/property of compact class
- Bindings:
- Update GIR-based bindings
- gstreamer: Update from 1.15+ git master
- webkit2gtk-4.0: Update to 2.21.92
- webkit2gtk-4.0: Add JSC namespace to javascriptcoregtk-4.0 and fix depends
- glib-2.0:
- Add Array.remove*() wrapper to avoid leaking generic elements
- Add (u)long.parse/try_parse()
Add return-type of Queue.remove*(), add HashTable.foreach_steal()
- Add float.parse/try_parse()
- gobject-2.0: Make GLib.Signal a struct of uint and bind g_signal_new*
- gdk-3.0: Change type of Gdk.Key.* constants to uint
- gtk+-3.0: Update to 3.23.2+6b6e53fd
- gtk+-4.0: Change type of Gdk.Key.* constants to uint
- gtk+-4.0: Update to 3.94.0+4e868584
- clutter-1.0: Change type of Clutter.Key.* constants to uint
- Remove clutter-gst-1.0, GStreamer 0.10, rest-0.6, tracker-indexer-module-1.0, libsoup-2.2, gdu and gdu-gtk, twitter-glib-1.0, mx-1.0
Remove vala-specific deprecations <= vala-0.22
Vala 0.40.11
released on November 7, 2018
Changes
- Various improvements and bug fixes:
- codegen:
- Initialize internal temp-variables used as reference parameter
- Improve ccode for fixed-length array parameters (#163)
- Fix regex literal compile flags
- Add prototype for *_register_type() function
- Don't emit *_free() of derived compact classes
- Add prototype for *_new() of abstact compact classes
- girwriter: Fix ctype of out/ref and array parameters
- ccode: Fix typo and actually check "end_decls" (#672)
- abstract syntax tree:
- testrunner: Reset $run_prefix before generating next test script
- build: Unconditionally add conditional VALAFLAGS to make bootstrap
- manual: Update from wiki.gnome.org
- codegen:
- Bindings:
- glib-2.0: Computing length once is enough in string.to_utf8()/splice()
- glib-2.0: Add binding for g_test_add()
- glib-2.0: Add array length to string.skip (#695)
- gio-2.0: Result of DBusMessage.get_header() is unowned
- gobject-2.0,gtk+-*.0: Fix some GLib.Value out/ref parameters
- gtk+-4.0: Update to 3.94.0+b4b30b49
Vala 0.40.10
released on September 24, 2018
Changes
- Various improvements and bug fixes:
codewriter: Prepend "yield" if is_yield_expression is set on MethodCall and ObjectCreationExpression
- codegen: Fix typo in is_pure_ccode_expression() [#673]
- gobject-introspection: Fix use after free in scanner [#674]
vala: Check if ArrayType supports its given element-type in analyzer pass
- valadoc: Fix some string escaping which gettext complains about
- Bindings:
- Update GIDL-based bindings to fix unsupported type-arguments
- Add gnome-desktop-3.0 bindings [#668]
- glib-2.0: Add feature_test_macro details for Time struct's methods
glib-2.0: Set DateTime.now () to use local time zone as the default
- gstreamer: Cherry-pick some fixes from 0.42
- gtk+-3.0: Update to 3.24.0
- gtk+-4.0: Update to 3.94.0+d90e2733
libxml-2.0: Add missing context parameter in OutputWriteCallback
- pango: Update to 1.42.3
- x11: Add binding for XCreateSimpleWindow
Vala 0.40.9
released on August 20, 2018
Changes
- Various improvements and bug fixes:
- girparser: Actually resolve type-arguments to be able to box them if needed
- girparser: Handle unsupported aliases which could not be fully processed
- codegen: Free errors after returning them on GDBusMethodInvocation [#657]
codegen: Fix invocation of abstract/virtual methods with NoWrapper in compact classes
- vala: Allow read-only properties
- manual: Update from wiki.gnome.org
- Bindings:
- glib-2.0: Add Array.remove*() wrapper to avoid leaking generic elements
- glib-2.0: Add (u)long.parse/try_parse() and float.parse/try_parse() [#649]
glib-2.0: Add return-type of Queue.remove*(), add HashTable.foreach_steal()
- gtk+-3.0: Update to 3.23.2+6b6e53fd
- gtk+-4.0: Update to 3.94.0+4e868584
- webkit2gtk-4.0: Update to 2.20.5
Vala 0.40.8
released on July 16, 2018
Changes
- Various improvements and bug fixes:
- Fix links in the Manual
- libvaladoc: Change link to Valadoc wiki page for HTML doclet
- valadoc: Use HTML5 doctype in HTML doclet
- codegen: Let methods return -1 on error by default if possible [#526]
Allow TypeModule subclasses as parameter-type in module-init-method [#648]
- girparser: Allow changing the type of constants using metadata [#643]
- girwriter: Add boolean GIR visible attribute to allow skipping symbols
- 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:
- gobject-2.0: Add lower_case_csuffix attributes to Type* symbols
- gdk-3.0,gtk+-3.0: Update to 3.23.0+df045423
- gio-2.0: Add custom IOError.from_errno() to make it work as expected [#253]
- gtk+-4.0: Update to 3.94.0+bf5f27c6
- gstreamer-rtsp-server-1.0: Update from 1.14+ git master [#653]
Vala 0.40.7
released on June 20, 2018
Changes
- 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
- Custom abstract methods of GLib.Source are handled differently [#641]
- Consistently use gpointer for delegate targets
- Unify some delegate-type check patterns
- Use default_init instead of base_init when registering interfaces [#699550]
- girparser: Add support for bool delegate_target [#520]
- girwriter:
- Output deprecated="1"
- construct-only properties don't have a setter method
- Don't write any custom attributes [#608]
valadoc: Fix TreeBuilder.create_array() for stacked Arrays
- 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
- gstreamer: Cherry-pick some fixes from 0.42, add gst-editing-services-1.0
- gtk+-3.0: Update to 3.22.30+9ac7f906
- gtk+-4.0: Update to 3.93.0+29fee2e8
- webkit2gtk-4.0: Update to 2.21.4
- Update GIR-based bindings
- glib-2.0:
Vala 0.40.6
released on May 21, 2018
Changes
- Regression fix:
- codegen: Avoid critical for array in-parameters with custom length-type
- tests: Drop assert which is failing on big-endian archs
Vala 0.40.5
released on May 21, 2018
Changes
- Various improvements and bug fixes:
- Warn if --gir is used without --library [#708693]
- Report an error if rank attribute is required but was not found [#660991]
- scanner: Accept \R and \N escape sequences in regex literals [#749576]
- scanner: Accept backreferences \1 through \99 in regex literals [#728574]
- codegen:
- Avoid critical in get_basic_type_info() when there is no signature [#729517]
- Fix serializing multidimensional arrays [#735437]
- Guard get_default_ref_sink_function() against null base-class
- Respect cname ccode-attribute of lockable fields
- Fix casting of length for "ref" array parameters
- codewriter: Add 'new' to symbols if needed to match the original source [#614686]
- girparser: Deal with missing "name" attribute by falling back on "c:type"
- girwriter: Drop errornous indent
- girwriter: Properly output variadic methods and use introspectable="0"
- genie: Add support for the \v escape character [#664689]
- genie: Add support for the \uXXXX escape sequence
- Bindings:
- glib-2.0: Fix IConv.iconv() [#634753]
gobject-2.0: Make constructor of ParamSpecBoxed public
- gstreamer: Cherry-pick some fixes from 0.42
- gtk+-3.0: Update to 3.22.30+21fddc39
- gtk+-4.0: Update to 3.93.0+3a860719
- javascriptcoregtk-4.0: buffer of String.get_utf8_cstring() is not "ref" [#788113]
- posix: Add missing cname = "int" to Posix.Signal enum
- sqlite3: Add additional constants for flags of Database.open_v2() [#795627]
- webkit2gtk-4.0: Cherry-pick some fixes from 0.42
Vala 0.40.4
released on Apr 15, 2018
Changes
- Various improvements and bug fixes:
girparser: Add support for NoAccessorMethod metadata
- Bindings:
- glib-2.0: Mark str parameter of Variant.take_string() as owned
- gstreamer: Update from 1.15+ git master
gtk+-*.0: Set NoAccessorMethod on Gtk.Radio*.group properties (Regression in gtk+-3.0)
- gtk+-4.0: Update to 3.93.0+fc6018f1
- json-glib-1.0: Mark return-type of gvariant_deserialize*() as nullable
- webkit2gtk-4.0: Update to 2.20.1
Vala 0.40.3
released on Apr 08, 2018
Changes
- Various bug fixes:
vala: Fix return-type of BasicBlock.get_successors()
- Bindings:
- gstreamer: Update from 1.15+ git master
gtk+-3.0: Fix regression of StatusIcon.position_menu() [#891629]
- gtk+-4.0: Update to 3.93.0+ff738269
- libgsf-1: Update to 1.14.42+ [#794777]
Vala 0.40.2
released on Mar 28, 2018
Changes
- Various bug fixes:
- gdbus: Fix missing declaration of _fd_list for async methods [#794566]
- Bindings:
- glib-2.0: Use g_value_*et_schar instead of deprecated g_value_*et_char
- gobject-2.0: Add ParamSpecGType
- gtk+-*.0: Hide dedicated constructors of compact classes bound as structs [#794733]
Vala 0.40.1
released on Mar 26, 2018
Changes
- Various bug fixes:
- codegen: Don't add target fields for captured delegates without target
- codegen: Don't add length fields for captured fixed-length array variables
- valadoc: Bump VALA_0_xx defines and glib_minor to match 0.40 series
- Bindings:
- Add libgeoclue-2.0 bindings [#794376]
- gobject-2.0: Cherry-pick some changes from 0.42
- gdk-3.0,gtk+-3.0: Update to 3.22.29
- gtk+-4.0: Update to 3.93.0+433517fd
gtk+-*.0: Fix iter parameter of TextView.backward*/forward*/move_visually() [#794345]
- gstreamer-1.0: Update to 1.13.91 and add gstreamer-webrtc-1.0 bindings
- libgsf-1: Switch to GIR and update to 1.14.42
- linux: Add various symbols
- posix: Add various symbols
- posix: Include sys/sysmacros.h for major(), minor() and makedev() [#794651]
- webkit-1.0: Update to 2.4.11
- webkit2gtk-4.0: Update to 2.20.0
- Update GIR-based bindings
Vala 0.40.0
released on Mar 11, 2018
Changes
- Highlights
- Report warning if property-type is not compatible with GLib.Object [#693932]
- Allow to pass compatible delegates to signal.connect() [#787521]
- Allow unscoped enum values where possible
Avoid use of temp-var for some callables returning ValueType and to access in/ref parameters [#789071]
- Reformat generated source declarations and definitions for better readability [#688447]
- Add --abi-stability option for ABI stability of libraries
- It ensures that the order of class/interface members in Vala sources will be preserved in generated C source (instance/type structs) [#789069]
- Add support for feature test macros [#793444]
- e.g. [CCode (feature_test_macro = "_GNU_SOURCE")]
- Various bug fixes:
- Use array_length_cexpr to support fixed-arrays for return-values [#784691]
- Properly parse arguments for vala interpeter-mode [#663070]
Enforce name-length >= 3 for structs using GType [#764041]
- Report error for missing type-parameter on enclosing type [#587905]
- Add boolean "use_inplace" ccode-attribute for methods [#750840]
- Improve handling of unowned/owned keyword occurrences
- Methods need to throw compatible error if target delegate throws one
- Discover invalid member access to instance field [#790903]
- Improve error output of mismatching overriding methods
- Don't transform an explicit "null" into valid format-string [#791215]
- Improve error message for missing type-parameter on enclosing type [#587905]
- Fix chain-up regression with real non-null struct parameters [#791785]
Release taken references to CodeContext after using it [#712694] and keep custom invocations of parse_file() possible [#791936]
- parser: Accept comma-separated list in case-statements of switchs [#614015]
- Don't write trailing space in function declarations/definitions [#688447]
- Add pkgdatadir and pkglibdir to pkg-config file
- gidlparser: Update type qualifiers
- Fix parameter type inference of overridden async methods [#792660]
- codewriter: Don't use string.replace() to apply header_to_override [#731322]
- codegen:
- Only add property-enum and GParamSpec-array for GObject classes
Use g_enum/flags_to_string while targeting glib >= 2.54
- Add destroy param when invoking delegate returned by delegate [#792077]
- Infer error parameter from abstract/virtual base methods [#614294]
- codegen: Don't try to infer error argument on async begin methods [#793158]
- Internally generated delegates don't require a typedef [#787521]
- Fix return-type for cancelled async creation methods of classes [#792942]
- Use G_PARAM_STATIC_STRINGS
Don't create null-safe destroy-wrapper for GenericType [#791283]
- Add support for abstract/virtual methods and properties in compact classes [#741465]
- Use pointers when accessing constant multi-dimensional arrays [#604371]
- Add valid support for const multi-dimensional arrays [#604371]
- Don't append fixed-length of array fields in initializers
- Add source_reference to some store_local/_field() calls
- vala: Variadic constructors without a real first parameter are not allowed
- Fix GDestroyNotify of delegate parameters in delegate declaration [#639059]
- Avoid critical when connecting dynamic signals
- valac: Always use the given "pkg-config" and respect PKG_CONFIG envar
- compiler: Prefix headers for set_cheader_override() if includedir is given [#793299]
- Issue a warning on DBus methods which are not throwing an Error
- Don't warn about unused internal methods which are meant to be visible on DBus [#593902]
- Don't install vapicheck [#793370]
- Properly handle array-initializers inside struct-initializers [#622178]
- The rank of an array-initializer should match the target's rank [#744923]
Make SemanticAnalyzer.check_arguments() independent of context
- Check with same rules for dbus compatibility as in GBusModule [#793859]
- Fix recursive declaration in generic base type [#688732]
- Prevent WITH_CGRAPH conditional having an impact on generated sources
- Update manual from wiki.gnome.org
- compiler: Fix critical when vala is called without run args [#793657]
- Valadoc
- Acknowledge possible properties in structs [#784705]
Fix fatal typo in GtkdocRenderer.visit_symbol_link() [#790266]
- Actually resolve "percnt;" to '%'
Keep bootstrap-support with valac >= 0.16.1
- Allow @link tags to be split over multiple lines [#646982]
- Add support for single line documentation comments [#736483]
- GIR parser:
- Allow change of parameter names
- Handle metadata for fields inside a transparent union
- Accept setters with boolean return-type as valid property-accessor
- Don't mark simple-type out-parameters with '?' as nullable
- Improve instance method detection [#732460]
Set NoAccessorMethod for non-readable and construct-only properties
- Ignore conflicting closure/destroy indexes
- Don't accept methods as property-accessor which throw errors [#792998]
- Bindings:
- alsa: Add the major part of the ALSA Sequencer API [#763127]
- gio-unix-2.0: Update to 2.55.1
glib-2.0: Add KeyFile.get_locale_for_key()
- glib-2.0, posix: Add feature test macro _GNU_SOURCE for pow10(3), pow10f(3), exp10(3) and exp10f(3) [#614788]
glib-2.0: Add GLib.OPTION_REMAINING and GLib.OptionFlags.NONE
- glib-2.0: Fix potential null pointer dereference in string.joinv() [#791257]
- glib-2.0: Add optional 'unparsed' parameter to *.try_parse () [#774124]
- glib-2.0: Use type-id/marshaller-type for (u)int16/(u)short from (u)int32 [#693932]
- gobject-2.0: Add some missing symbols
- gobject-2.0: Add missing GType constants for fundamentals [#791023]
- gstreamer-1.0: Bind GST_TIME_ARGS, GST_STIME_ARGS macros [#750840]
- gstreamer-1.0: Bind GST_DEBUG_BIN_TO_DOT_FILE/*_WITH_TS [#785215]
- gstreamer-1.0: Update to 1.13.90
gtk+-2.0: Mark MessageDialog constructor parameter, message_format, as nullable [#791570]
- gtk+-3.0: Switch to GIR [#730746]
- gtk+-2.0/3.0: Don't hide user_data in Clipboard.set_with_data() [#792237]
- gtk+-3.0: Fix cheader_filename of Plug and Socket
- gtk+-3.0: Update to 3.22.26+6f26d0dc
gtk+-4.0: Split Gsk.RenderNode into several classes
- gtk+-4.0: Only override type of "event" parameters
- gtk+-4.0: Update to 3.93.0+527d265b
- libgnome-menu-3.0: Add deps file
- libwnck-3.0: Update to 3.24.1
- linux: Add dup3 [#729803]
- linux: Add feature_test_macros to non-POSIX file control constants and dup3
- linux: Add various symbols
- posix: Move signal constants to an enum and add few missing ones [#790958]
- posix: Add ctime(3) and fix binding of struct hostent and gethostbyname(3)
- posix: Fix sig*set and sigprocmask parameters to be out/ref [#727425]
- posix: Add feature_test_macro _GNU_SOURCE to sighandler_t [#761975]
- posix: Add various symbols [#663633]
- purple: Update to 2.12.0
- webkit2gtk-4.0: Update to 2.19.5
webkit2gtk-web-extension-4.0: Fix DOM.EventTarget interface
- Update GIR-based bindings
- Remove bindings which are shipped upstream for some years
- gedit 3 [#776021], libgnome-keyring [#776022], gtksourceview-3.0 [#776023], libgdata [#776024], librsvg-2.0 [#776025]
Vala 0.38.10
released on May 22, 2018
Changes
- Various improvements and bug fixes:
- Warn if --gir is used without --library [#708693]
- Report an error if rank attribute is required but was not found [#660991]
- scanner: Accept \R and \N escape sequences in regex literals [#749576]
- scanner: Accept backreferences \1 through \99 in regex literals [#728574]
- codegen:
- Avoid critical in get_basic_type_info() when there is no signature
- [#729517]
- Fix serializing multidimensional arrays [#735437]
- Guard get_default_ref_sink_function() against null base-class
- Respect cname ccode-attribute of lockable fields
- Fix casting of length for "ref" array parameters
- Avoid critical in get_basic_type_info() when there is no signature
girparser: Add support for NoAccessorMethod metadata
- girparser: Deal with missing "name" attribute by falling back on "c:type"
- girwriter: Drop errornous indent
- girwriter: Properly output variadic methods and use introspectable="0"
- genie: Add support for the \v escape character [#664689]
- genie: Add support for the \uXXXX escape sequence
- Bindings:
- glib-2.0: Fix IConv.iconv() [#634753]
- glib-2.0: Mark str parameter of Variant.take_string() as owned
gobject-2.0: Make constructor of ParamSpecBoxed public
- gstreamer: Cherry-pick some fixes from 0.42
gtk+-*.0: Set NoAccessorMethod on Gtk.Radio*.group properties
- javascriptcoregtk-4.0: buffer of String.get_utf8_cstring() is not "ref"
- [#788113]
- json-glib-1.0: Mark return-type of gvariant_deserialize*() as nullable
- [#795265]
- sqlite3: Add additional constants for flags of Database.open_v2() [#795627]
- webkit2gtk-4.0: Update to 2.20.1 and cherry-pick some fixes from 0.42
Vala 0.38.9
released on April 9, 2018
Changes
- Various bug fixes:
- valac: Always use the given "pkg-config" and respect PKG_CONFIG envar
- codegen:
- Don't append fixed-length of array fields in initializers
- Add source_reference to some store_local/_field() calls
- Don't add target fields for captured delegates without target
- Don't add length fields for captured fixed-length array variables
- Properly handle array-initializers inside struct-initializers [#622178]
- The rank of an array-initializer should match the target's rank [#744923]
- Fix recursive declaration in generic base type [#688732]
- valadoc: Bump glib_minor to match 0.38 series
- gdbus: Fix missing declaration of _fd_list for async methods [#794566]
vala: Fix return-type of BasicBlock.get_successors()
- Bindings:
- glib-2.0: Use g_value_*et_schar instead of deprecated g_value_*et_char
- gobject-2.0: Add ParamSpecGType
- gobject-2.0: Cherry-pick some changes from 0.40
- gstreamer-1.0: Update to 1.14.0 and add gstreamer-webrtc-1.0 bindings
- gdk-3.0,gtk+-3.0: Update to 3.22.29
gtk+-*.0: Fix iter parameter of TextView.backward*/forward*/move_visually()
- [#794345]
- gtk+-*.0: Hide dedicated constructors of compact classes bound as structs
- [#794733]
gtk+-3.0,gtk+-4.0: Fix TreeView.is_blank_at_pos()
- libgnome-menu-3.0: Add deps file
- posix: Fix sig*set and sigprocmask parameters to be out/ref [#727425]
- posix: Include sys/sysmacros.h for major(), minor() and makedev() [#794651]
- purple: Update to 2.12.0
- webkit2gtk-4.0: Update to 2.20.0
Vala 0.38.8
released on February 15, 2018
Changes
- Various bug fixes:
- Fix GDestroyNotify of delegate parameters in delegate declaration [#639059]
- Avoid critical when connecting dynamic signals
- compiler: Prefix headers for set_cheader_override() if includedir is given
- [#793299]
- Don't warn about unused internal methods which are meant to be visible
- on DBus [#593902]
- libvaladoc: Prevent WITH_CGRAPH conditional having an impact on generated
- sources
- Bindings:
- gio-2.0: Cherry-pick some DBusProxy fixes from 0.40
- gstreamer-1.0: Update from 1.13+ git master
- gdk-3.0,gtk+-3.0: Update to 3.22.27
Vala 0.38.7
released on February 04, 2018
Changes
- Regression fix:
- codegen: Don't try to infer error argument on async begin methods [#793158]
- This was a regression introduced by [#614294]
- codegen: Don't try to infer error argument on async begin methods [#793158]
Vala 0.38.6
released on January 30, 2018
Changes
- Various bug fixes:
- girparser:
Set NoAccessorMethod for non-readable and construct-only properties
- Ignore conflicting closure/destroy indexes
- Don't accept methods as property-accessor which throw errors [#792998]
- codegen:
- Infer error parameter from abstract/virtual base methods [#614294]
- Fix return-type for cancelled async creation methods of classes [#792942]
- vala: Variadic constructors without a real first parameter are not allowed
libvaladoc: Keep bootstrap-support with valac >= 0.16.1
- girparser:
- Bindings:
- gstreamer-1.0: Update from 1.13+ git master
- gtk+-4.0: Only override type of "event" parameters
Vala 0.38.5
released on January 21, 2018
Changes
- Various improvements and bug fixes:
- codegen
- Only add property-enum and GParamSpec-array for GObject classes
- Add destroy param when invoking delegate returned by delegate [#792077]
- vala: Add pkgdatadir and pkglibdir to pkg-config file
- gidlparser: Update type qualifiers
- libvaladoc: Allow @link tags to be split over multiple lines [#646982]
- libvaladoc: Add support for single line documentation comments [#736483]
- vala: Fix parameter type inference of overridden async methods [#792660]
- codewriter: Don't use string.replace() to apply header_to_override [#731322]
- codegen
- Bindings:
glib-2.0: Add GLib.OPTION_REMAINING and GLib.OptionFlags.NONE
- gstreamer-1.0: Update from 1.13+ git master
gtk+-2.0: Mark MessageDialog constructor parameter, message_format, as
- nullable [#791570]
- gtk+-2.0/3.0: Don't hide user_data in Clipboard.set_with_data() [#792237]
- gtk+-3.0: Update to 3.22.26+6f26d0dc
gtk+-4.0: Update to 3.93.0 and split Gsk.RenderNode into several classes
- libwnck-3.0: Update to 3.24.1
- posix: Add ctime(3) and fix binding of struct hostent and gethostbyname(3)
- webkit2gtk-4.0: Update to 2.19.5
webkit2gtk-web-extension-4.0: Fix DOM.EventTarget interface
Vala 0.38.4
released on December 11, 2017
Changes
- Various bug fixes:
Enforce name-length >= 3 for structs using GType [#764041]
- Report error for missing type-parameter on enclosing type [#587905]
- Discover invalid member access to instance field [#790903]
- Improve error output of mismatching overriding methods
- vala: Don't transform an explicit "null" into valid format-string [#791215]
codegen: Don't create null-safe destroy-wrapper for GenericType [#791283]
- Improve error message for missing type-parameter on enclosing type [#587905]
- GIR parser:
- Allow change of parameter names
- Handle metadata for fields inside a transparent union
- Accept setters with boolean return-type as valid property-accessor
- Don't mark simple-type out-parameters with '?' as nullable
- Valadoc
- Acknowledge possible properties in structs [#784705]
Fix fatal typo in GtkdocRenderer.visit_symbol_link() [#790266]
- libvaladoc: Actually resolve "percnt;" to '%'
- Bindings:
- gobject-2.0: Add some missing symbols
- gstreamer-1.0: Bind GST_DEBUG_BIN_TO_DOT_FILE/*_WITH_TS [#785215]
- gstreamer-1.0: Update from 1.13+ git master
- gtk+-3.0: Update to 3.22.26+9ce824d3
- webkit2gtk-4.0: Update to 2.19.2
- glib-2.0: Fix potential null pointer dereference in string.joinv() [#791257]
- gobject-2.0: Add missing GType constants for fundamentals [#791023]
Vala 0.38.3
released on November 09, 2017
Changes
- Various bug fixes:
- codegen: Prioritize "array_length=true" over "array_null_terminated=true" [#788775]
- codegen: Avoid possible conflicts with internal property/signal defines [#788964]
- Bindings:
- gio-2.0: Expose g_task_get_source_object as Task.get_unowned_source_object
- gstreamer-1.0: Update from 1.13+ git master
- gtk+-4.0: Update to 3.92.1
- libxml-2.0: Add DTD methods [#789442]
Vala 0.38.2
released on October 08, 2017
Changes
- Bindings:
- gstreamer-1.0, gtk+-3.0, gtk+-4.0: Update from git master
- gnutls: Fix free_function ccode-attribute of Certificate [#788181]
Vala 0.38.1
released on September 11, 2017
Changes
- Various bug fixes:
- valadoc: Don't use 'stderr' as variable name [#787305]
- codegen: Try to use a more unique internal define for properties [#787436]
- vala: Update list of used attributes
- method: Use prototype-string for error-reports of return-type mismatches
- Bindings:
glib-2.0: Fix MainContext.check(),
OptionEntry[] params are null-terminated, Bind g_convert_with_fallback() and g_convert_with_iconv()
Vala 0.38.0
released on September 4, 2017
Changes
- Highlights
- Don't warn about deprecated symbols if installed_version is older
- Add --gresourcesdir option [#783133]
- Install libvala-0.xx.vapi to "global" vapi directory
Require and target GLib >= 2.40
- build: Make ccode and codegen private API
- build: Use --use-header for vala's libraries
- compiler: Add --color=WHEN option
- codegen: Use g_object_notify_by_pspec() to notify property-changes
- codegen: Use *_free_full to free GLib.List, GLib.SList and GLib.Queue
- codegen: Support renamed signals [#731547]
- Optimize (de)serialization of arrays with type-signature "ay" [#772426]
- Merge valadoc - Consider valadoc a part of vala's toolchain and
- therefore let it live in the main repository (adds graphviz to the build-requirements)
- Add .editorconfig file [#786620]
- Various bug fixes:
- Fix finally blocks with async yields [#741929]
- Handle non-null in coalescing expression [#611223]
Make the task_complete flag for < 2.44 more similar to >= 2.44 [#783543]
Nullable ValueType requires POINTER as marshaller signature [#783897]
NoAccessorMethod attribute is allowed for gobject-properties only
- girparser: Fix parsing of delegate-alias without target
- compiler: Use API_VERSION instead of stripping PACKAGE_SUFFIX
girwriter: Write length-parameters of arrays with rank > 1 [#758019]
gdbus: Don't leak nested HashTable on deserialization [#782719]
- codewriter: Update timestamps of generated c-files if needed [#683286]
- tests: Use dbus-run-session instead of dbus-launch [#771455]
codegenerator: Add source_reference parameter to CodeGenerator.store_*()
- Don't allow assigning delegate if no target/closure is available [#598869]
- gee: Add some useful symbols from gee-0.8
- vapigen: Mark given source-files as such and force girparser to handle them
- Improve error output for incompatible method signatures
(Add CallableType as base for DelegateType, MethodType, SignalType)
- codegen:
- Include glib-object.h for Enums/Structs with type_id
- Actually write declaration for GNodeTraverseFunc wrapper [#786845]
- Don't transfer ownership of variable if target-type is unknown [#736774]
- Adjust format-index for printf/scanf-methods which throw errors [#781061]
- Use given dup_function for structs
- Initialize temp-variable for fixed-size arrays to zero first [#787152]
- Add support for "type-func" in ui-files [#787033]
- GIR parser:
- Better support of "cprefix" argument in metadata
- Support "cname" argument in metadata
- Bindings:
- gio-2.0: Add DBusConnection 'closed' signal as 'on_closed' [#684358]
gio-2.0: Use default 'length = null' for DataInputStream.read_line_utf8*
- [#783351]
- poppler-glib: Update to 0.56.0
- libgvc: Add WITH_CGRAPH conditionals
- gio-2.0: Application.set_default() is not an instance method
- glib-2.0: Update Unicode symbols
gobject-2.0: Add required type_id attributes to all ParamSpec subclasses
- libgdata: Make Authorizer.reauth_* methods virtual [#779229]
- gtk+-3.0: Update to 3.22.19
- gtk+-4.0: Update to 3.91.2
- gtk+-4.0: Make Gsk.Texturer.for_*() static factory methods
- webkit2gtk-4.0: Update to 2.17.91
libxml-2.0: Update Xml.ParserOption [#785585]
- libxml-2.0: Bind xmlLastElementChild and xmlPreviousElementSibling
pangocairo: CairoFontMap.set_default() is not an instance method
Vala 0.36.16
released on September 24, 2018
Changes
- Various improvements and bug fixes:
codewriter: Prepend "yield" if is_yield_expression is set on MethodCall and ObjectCreationExpression
- codegen: Fix typo in is_pure_ccode_expression() [#673]
- gobject-introspection: Fix use after free in scanner [#674]
vala: Check if ArrayType supports its given element-type in analyzer pass
- valadoc: Fix some string escaping which gettext complains about
- girparser: Actually resolve type-arguments to be able to box them if needed
- codegen: Free errors after returning them on GDBusMethodInvocation [#657]
- codegen: Add source_reference to unsupported floating reference error
- vala: Allow read-only properties
- manual: Update from wiki.gnome.org
- Bindings:
- Update GIDL-based bindings to fix unsupported type-arguments
- glib-2.0: Add Array.remove*() wrapper to avoid leaking generic elements
glib-2.0: Add return-type of Queue.remove*(), add HashTable.foreach_steal()
glib-2.0: Set DateTime.now () to use local time zone as the default
- gstreamer: Cherry-pick some fixes from 0.40
- gtk+-3.0: Update to 3.24.0
libxml-2.0: Add missing context parameter in OutputWriteCallback
pango: Fix ownership of LayoutIter.get_line()
- x11: Add binding for XCreateSimpleWindow
Vala 0.36.15
released on Jul 16, 2018
Changes
- 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]
- glib-2.0:
Vala 0.36.14
released on May 22, 2018
Changes
- Various improvements and bug fixes:
- Warn if --gir is used without --library [#708693]
- Report an error if rank attribute is required but was not found [#660991]
- scanner: Accept \R and \N escape sequences in regex literals [#749576]
- scanner: Accept backreferences \1 through \99 in regex literals [#728574]
- codegen:
- Avoid critical in get_basic_type_info() when there is no signature
- [#729517]
- Fix serializing multidimensional arrays [#735437]
- Guard get_default_ref_sink_function() against null base-class
- Respect cname ccode-attribute of lockable fields
- Fix casting of length for "ref" array parameters
- Avoid critical in get_basic_type_info() when there is no signature
girparser: Add support for NoAccessorMethod metadata
- girparser: Deal with missing "name" attribute by falling back on "c:type"
- girwriter: Drop errornous indent
- girwriter: Properly output variadic methods and use introspectable="0"
- genie: Add support for the \v escape character [#664689]
- genie: Add support for the \uXXXX escape sequence
- Bindings:
- glib-2.0: Fix IConv.iconv() [#634753]
- glib-2.0: Mark str parameter of Variant.take_string() as owned
gobject-2.0: Make constructor of ParamSpecBoxed public
- gstreamer: Cherry-pick some fixes from 0.42
gtk+-*.0: Set NoAccessorMethod on Gtk.Radio*.group properties
- json-glib-1.0: Mark return-type of gvariant_deserialize*() as nullable
- [#795265]
- sqlite3: Add additional constants for flags of Database.open_v2() [#795627]
- webkit2gtk-4.0: Update to 2.20.1 and cherry-pick some fixes from 0.42
Vala 0.36.13
released on April 9, 2018
Changes
- Various bug fixes:
- valac: Always use the given "pkg-config" and respect PKG_CONFIG envar
- codegen:
- Don't append fixed-length of array fields in initializers
- Don't add target fields for captured delegates without target
- Don't add length fields for captured fixed-length array variables
- Properly handle array-initializers inside struct-initializers [#622178]
- The rank of an array-initializer should match the target's rank [#744923]
- Fix recursive declaration in generic base type [#688732]
- gdbus: Fix missing declaration of _fd_list for async methods [#794566]
vala: Fix return-type of BasicBlock.get_successors()
- Bindings:
- glib-2.0: Use g_value_*et_schar instead of deprecated g_value_*et_char
- gobject-2.0: Add ParamSpecGType
- gobject-2.0: Cherry-pick some changes from 0.38
- gstreamer-1.0: Cherry-pick some fixes from 0.38/0.40
- gdk-3.0,gtk+-3.0: Update to 3.22.29
gtk+-*.0: Fix iter parameter of TextView.backward*/forward*/move_visually()
- [#794345]
- gtk+-4.0: Hide dedicated constructors of compact classes bound as structs
- [#794733]
- libgnome-menu-3.0: Add deps file
- posix: Fix sig*set and sigprocmask parameters to be out/ref [#727425]
- posix: Include sys/sysmacros.h for major(), minor() and makedev() [#794651]
- purple: Update to 2.12.0
- webkit2gtk-4.0: Update to 2.20.0
Vala 0.36.12
released on February 15, 2018
Changes
- Various bug fixes:
- Fix GDestroyNotify of delegate parameters in delegate declaration [#639059]
- Avoid critical when connecting dynamic signals
- compiler: Prefix headers for set_cheader_override() if includedir is given
- [#793299]
- Don't warn about unused internal methods which are meant to be visible
- on DBus [#593902]
- Bindings:
- gio-2.0: Cherry-pick some DBusProxy fixes from 0.40
- gstreamer-1.0: Cherry-pick some fixes from 0.38
- gdk-3.0,gtk+-3.0: Update to 3.22.27
Vala 0.36.11
released on February 04, 2018
Changes
- Regression fix:
- codegen: Don't try to infer error argument on async begin methods [#793158]
- This was a regression introduced by [#614294]
- codegen: Don't try to infer error argument on async begin methods [#793158]
Vala 0.36.10
released on January 30, 2018
Changes
- Various bug fixes:
- girparser:
Set NoAccessorMethod for non-readable and construct-only properties
- Ignore conflicting closure/destroy indexes
- Don't accept methods as property-accessor which throw errors [#792998]
- codegen:
- Infer error parameter from abstract/virtual base methods [#614294]
- Fix return-type for cancelled async creation methods of classes [#792942]
- vala: Variadic constructors without a real first parameter are not allowed
- girparser:
Vala 0.36.9
released on January 21, 2018
Changes
- Various improvements and bug fixes:
- codegen: Add destroy param when invoking delegate returned by delegate
- [#792077]
- gidlparser: Update type qualifiers
- vala: Fix parameter type inference of overridden async methods [#792660]
- codewriter: Don't use string.replace() to apply header_to_override [#731322]
- codegen: Add destroy param when invoking delegate returned by delegate
- Bindings:
glib-2.0: Add GLib.OPTION_REMAINING and GLib.OptionFlags.NONE
gtk+-2.0: Mark MessageDialog constructor parameter, message_format, as
- nullable [#791570]
- gtk+-2.0/3.0: Don't hide user_data in Clipboard.set_with_data() [#792237]
- gtk+-3.0: Update to 3.22.26+6f26d0dc
- libwnck-3.0: Update to 3.24.1
- posix: Add ctime(3) and fix binding of struct hostent and gethostbyname(3)
- webkit2gtk-4.0: Update to 2.19.5
webkit2gtk-web-extension-4.0: Fix DOM.EventTarget interface
Vala 0.36.8
released on December 11, 2017
Changes
- Various bug fixes:
Enforce name-length >= 3 for structs using GType [#764041]
- Report error for missing type-parameter on enclosing type [#587905]
- Discover invalid member access to instance field [#790903]
- Improve error output of mismatching overriding methods
- vala: Don't transform an explicit "null" into valid format-string [#791215]
codegen: Don't create null-safe destroy-wrapper for GenericType [#791283]
- Improve error message for missing type-parameter on enclosing type [#587905]
- GIR parser:
- Allow change of parameter names
- Handle metadata for fields inside a transparent union
- Accept setters with boolean return-type as valid property-accessor
- Don't mark simple-type out-parameters with '?' as nullable
- Bindings:
- gobject-2.0: Add some missing symbols
- gstreamer-1.0: Bind GST_DEBUG_BIN_TO_DOT_FILE/*_WITH_TS [#785215]
- gstreamer-1.0: Cherry-pick some fixes from 0.38 branch
- gtk+-3.0: Update to 3.22.26+9ce824d3
- glib-2.0: Fix potential null pointer dereference in string.joinv() [#791257]
- gobject-2.0: Add missing GType constants for fundamentals [#791023]
Vala 0.36.7
released on November 09, 2017
Changes
- Various bug fixes:
- codegen: Prioritize "array_length=true" over "array_null_terminated=true" [#788775]
- codegen: Avoid possible conflicts with internal property/signal defines [#788964]
- Bindings:
- gio-2.0: Expose g_task_get_source_object as Task.get_unowned_source_object
- gtk+-4.0: Update to 3.92.1
- libxml-2.0: Add DTD methods [#789442]
Vala 0.36.6
released on October 08, 2017
Changes
- Various bug fixes:
- codegen: Support renamed signals [#731547]
- Optimize (de)serialization of arrays with type-signature "ay" [#772426]
- codegen: Try to use a more unique internal define for properties [#787436]
- vala: Update list of used attributes
- method: Include ownership transfer classifier for return-type mismatch
- Bindings:
- glib-2.0: Bind g_convert_with_fallback() and g_convert_with_iconv()
- gio-2.0: Add DBusConnection 'closed' signal as 'on_closed' [#684358]
- gstreamer-1.0, gio-2.0: Various fixes
- gnutls: Fix free_function ccode-attribute of Certificate [#788181]
- gtk+-3.0: Update to 3.22.24
- webkit2gtk-4.0: Update to 2.18
Vala 0.36.5
released on September 07, 2017
Changes
- Various bug fixes:
- codegen:
- Initialize temp-variable for fixed-size arrays to zero first [#787152]
- Actually write declaration for GNodeTraverseFunc wrapper [#786845]
- Don't transfer ownership of variable if target-type is unknown [#736774]
- Adjust format-index for printf/scanf-methods which throw errors [#781061]
- Include glib-object.h for Enums/Structs with type_id
- vapigen: Mark given source-files as such and force girparser to handle them
- tests: Fix some syntax issues [#786652]
- Add .editorconfig file [#786620]
- codegen:
- Bindings:
- gtk+-3.0: Update to 3.22.19+70b61973
- gtk+-4.0: Update to 3.91.2+80e32390
- gtk+-4.0: Make Gsk.Texturer.for_*() static factory methods
- libgdata: Make Authorizer.reauth_* methods virtual [#779229]
libxml-2.0: Update Xml.ParserOption [#785585]
- libxml-2.0: Bind xmlLastElementChild and xmlPreviousElementSibling
gobject-2.0: Add required type_id attributes to all ParamSpec subclasses
Vala 0.36.4
released on June 26, 2017
Changes
- Highlights
- Don't warn about deprecated symbols if installed_version is older
- Add --gresourcesdir option [#783133]
- Various bug fixes:
gdbus: Don't leak nested HashTable on deserialization [#782719]
- Fix finally blocks with async yields [#741929]
- Handle non-null in coalescing expression [#611223]
Make the task_complete flag for < 2.44 more similar to >= 2.44 [#783543]
Nullable ValueType requires POINTER as marshaller signature [#783897]
NoAccessorMethod attribute is allowed for gobject-properties only
- girparser: Fix parsing of delegate-alias without target
- compiler: Use API_VERSION instead of stripping PACKAGE_SUFFIX
girwriter: Write length-parameters of arrays with rank > 1 [#758019]
- Bindings:
gio-2.0: Use default 'length = null' for DataInputStream.read_line_utf8* [#783351]
gobject-2.0: Add GLib.ParamSpecPointer
- poppler-glib: Update to 0.54.0
- gstreamer-1.0: Various binding fixes
Vala 0.36.3
released on May 2, 2017
Changes
- Various bug fixes:
- scanner: Fix calculation of column value for tokens after multiline comment [#652899]
codegen: Unref GLib.AsyncResult on uncaught errors in coroutines [#641171]
- Keep initializing result-variable for struct constructors [#782056]
Vala 0.36.2
released on April 25, 2017
Changes
- Various bug fixes:
- Enums require at least one value otherwise report an error
- Bindings:
- gstreamer-1.0: Update to 1.11.90+
- gio-2.0: Fix GLib.Task constructor and report_error/report_new_error()
- glib-2.0: Add quark() functions to errordomains and missing version macro and constants
Vala 0.36.1
released on April 3, 2017
Changes
- Various bug fixes:
- Always consider a method compatible with itself [#773135]
- Perform arguments-check against actual .end() method-signature [#684208]
- Slightly improve lamdba-expression error on target-type mismatch
- Fix delegate initializer for instance fields [#683925]
- Don't leak target-reference when casting/assigning owned delegates [#780426]
- GIR parser and writer:
- girparser: Add destroy argument for metadata [#750838]
- vapigen: Add --nostdpkg option like in valac
- Bindings:
- gstreamer-1.0: Fix Pad.set_*_function() bindings [#750838]
- glib-2.0: Add missing version macro and constants, unichar.to_string doesn't return null
- gtk+-2.0,gtk+-3.0: Mark "intersection" param of Widget.intersect() as out
- gtk+-4.0: Update to 3.90.0
Vala 0.36.0
released on March 18, 2017
Changes
- Highlights
Update manual using DocBook from wiki.gnome.org as source [#779090]
Add support for array-parameters with rank > 1 in signals [#778632]
- Use GTask instead of GSimpleAsyncResult with GLib 2.36/2.44 target [#763345]
- Deny access to protected constructors [#760031]
- Support [DBus (signature = ...)] for properties [#744595]
- Add [CCode ("finish_instance = ...")] attribute [#710103]
Support [HasEmitter] for vala sources [#681356]
- Add support for the \v escape charactor [#664689]
- Add explicit copy method for arrays [#650663]
- Allow underscores in type parameter names [#644938]
Support [FormatArg] attribute for parameters
- Ignore --thread commandline option and drop gthread-2.0 references
Check inferred generic-types of MemberAccess [#775466]
Check generic-types count of DelegateType [#772204]
- Fix type checking when using generics in combination with subtype [#615830]
- Fix type parameter check for overriding generic methods
- Use g_signal_emit where possible [#641828]
- Only emit notify of properties if value actually changed [#631267] [#779955]
- Mark chained relational expressions as stable [#677022]
- Perform more thorough compatibility check of inherited properties [#779038]
Handle nullable ValueTypes in signals delegates properly [#758816]
- New bindings:
- gtk+-4.0, gtk+-unix-print-{2,3,4}.0, libgrss
- Removed bindings:
- clutter-json-1.0
- Updated bindings. Some fixes may need to be wrapped in your Vala code
- with the preparser directive #if VALA_0_36
- cairo: Add bindings for cairo_*_user_data()
- clutter-1.0: Fix constructors which weren't detected as such
clutter-gst-2.0: Skip VideoTexture.get_audio_streams/get_subtitle_tracks
- clutter-gst-3.0: Three commits
- gdk-2.0: Include gdk/gdkkeysyms.h for Gdk.Key
- gdk-3.0: Three commits
- gdk-pixbuf-2.0: Three commits
- gobject-introspection-1.0: Prettify and fix the whole thing
- gsl.vapi: Fix attribute typos
gstreamer-1.0: Make ElementFactory.get_static_pad_templates fully "unowned",
Mark *.make_writable with "ReturnsModifiedPointer",
- Fix Gst.Base.Adapter.map/take bindings
- gtk+-3.0: Various updates
gtk+-X.0: Mark "iter" param of ListStore.remove() as ref
libarchive: Add ReadDisk
- libxml-2.0: Adding missing API and nullable parameters
- linux: add non-posix fcntl constants
- polkit-gobject-1: Fix constructors which weren't detected as such
- poppler-glib: Update to 0.52.0
- rest-0.7: Fix some ownership problems
sdl: Make Palette and PixelFormat a struct
- webkit2gtk-4.0: Update to 2.16
webkit2gtk: URI*.get_http_headers returns unowned Soup.MessageHeaders
- Updated GLib core bindings:
- gio-2.0:
- Fix async constructors of DBusConnection,DBusObjectManagerClient...
- Fix binding of Resolver.lookup_service*()
Keep GLib.Socket API compatible with gio < 2.48
Update SettingsBackend related bindings
- Add/"Unlock" missing GTask symbols
- gio-unix-2.0:
- Add "g_unix_mounts_for" and fix "g_unix_mount_at"
- glib-2.0:
- Add GPOINTER_TO_* as from_pointer()
- Add G_CHECKSUM_SHA384
- Add "g_utf8_make_valid"
- Add more Error bindings
- Add simple fast-path to string.replace()
- Add UCS-4 and UTF-16 related bindings
- Add uuid_string_*
- Fix g_bookmark_file_load_from_*/to_file bindings
- Mark delegates in Test.add_data_func/add_func() as scope=async
- Mark va_list.arg() with simple-generics to allow int64 or double
- Update Unicode symbols
- gobject-2.0:
- Add a bunch of missing symbols
- Add some missing "array_length_type" annotations
- gio-2.0:
- GIR parser and writer:
- Add [GIR ("fullname = ...")] attribute, set fullname of GType [#775591]
- More complete parsing of field information [#772902]
- Use the correct tag- and element-name for an annotation [#769597]
- Use type_id information from gir if not already overridden
- No support for fixed-size array as return-value
- Let alias inherit more information from base_type
- Improve function to method conversion
- Avoid fatal handling of nameless unions
- Allow to specify the base_type of an alias
- Add metadata-support for "returns_modified_pointer" [#759255]
- D-Bus code generation:
- Check there is a return error location before using it [#779652]
- Fix memory-leak using g_task_propagate_pointer [#778993]
- Initialize intermediate variables [#778540]
- Handle errors when extracting FDs from dbus messages [#778540]
- Ensure extracted data from the GVariant is freed on error [#778540]
- C code hardening and reproducibility:
- Fix build with -Werror=enum-compare -Werror=switch
- Build testsuite with -Werror=format-nonliteral -Werror=format-security
- -Werror=int-conversion -Werror=redundant-decls
Add G_GNUC_FORMAT attribute for FormatArg functions [#774060]
- Add G_GNUC_PRINTF/SCANF attribute for Printf/ScanfFormat functions [#710862]
- gtkmodule: Order required-gtype-classes for reproducibility [debian#802528]
- Reduce incompatible-pointer-type C code warnings:
- Cast vfunc pointer assigns of abstract overrides [#777958]
- Fix vfunc cast for async method implementation/override
- Default to void-return for vfunc cast of *_async methods
- Cast *_destroy_func of generic-types calls to GDestroyNotify
- Cast destroy_data for g_cclosure_new to GClosureNotify
- Pass pointer of matching type to property-getter
- memberaccess: Don't resolve base_method/property twice
- Genie:
- Allow comma-separated identifiers in definition of enums [#776833]
- Add empty file check to read_token() [#633083]
- Various bug fixes:
- codegen: Don't create duplicated complete-async code [#778302]
- codegen: Don't return void for non-nullable simple-type structs [#778224]
- vala: Non-null initializers not allowed for owned namespace fields [#777697]
- codegen: Support casting arbitary value-types to arrays [#777194]
- codegen: Reference struct fields with their actual cname [#775761]
- codegen: Add function-prototypes for all register-type calls [#775446]
- vala: check a property has an accessor and/or a mutator [#773956]
codegen: Don't declare CreationMethod for compact-classes twice [#772661]
- method: Print encountered type if return types mismatch [#769501]
- codegen: Fix memory-leak with object initializer for properties [#766739]
- codegen: Fix array length of array returned by lambda [#761360]
- codegen: Fix emission of constant array length [#756376]
- codegen: Support deprecating properties and their accessors [#732449]
- codegen: Don't add static modifier to abstract property setters [#673389]
codegen: Fix instance parameter property setter in SimpleType structs
- [#657346]
- codegen: Fix base-access from within overriding struct-property-accessor
- [#764481]
- vala: Check accessibility of default arguments [#648030]
- vala: Disallow private accessors in overridable properties [#603491]
- methodcall: Don't try to remove N_/NC_ while properly handled in C [#642350]
vala: Check type arguments in DataType.equals [#641418]
- parser: Allow cast pointer expressions without enclosing parens [#590641]
- Don't initialize local variable if not requested
- codegen: Don't implicitly initialize local variables with initializer
- Check printf arguments of object creation expressions
- ccodefunction: Only add G_GNUC_DEPRECATED to declarations
- codegen: Avoid criticals while unconditionaly trying to chain-up to
- non-existing property-accessors
- signalmodule: Add signal-emitter declaration if needed [#779609]
- signalmodule: Fix deprecation of signals
- codegen: Properly null-out source on ownership-transfer of delegates
vala: Fix MemberAccess.is_non_null() for EnumValue constants [#780050]
- Contributors:
- Abderrahim Kitouni, Alistair Thomas, Andrea Del Signore, Carlos Garnacho, Daniel Espinosa, Daniel Pfeifer, Dr. Michael Lauer, Evan Nemerson, Florian Brosch, Francisco Serna, George Barrett, Jens Georg, Jordan Yelloz, Jürg Billeter, Luca Bruno, Marvin W, Matthias Berndt, Michael James Gratton, mrmacete, Nikolay Orlyuk, Niko Tyni, Ole André Vadla Ravnås, Philip Withnall, Richard Wiedenhöft, Rico Tzschichholz, Sam Thursfield, Severin Heiniger, Simon Werbeck, Timm Bäder, Vladislav, Yu Feng
Vala 0.34.18
released on May 22, 2018
Changes
- Bug fixes and binding updates
Vala 0.34.17
released on February 15, 2018
Changes
- Bug fixes and binding updates
Vala 0.34.16
released on February 04, 2018
Changes
- Regression fix
Vala 0.34.15
released on January 30, 2018
Changes
- Bug fixes and binding updates
Vala 0.34.14
released on January 21, 2018
Changes
- Bug fixes and binding updates
Vala 0.34.13
released on December 11, 2017
Changes
- Bug fixes and binding updates
Vala 0.34.12
released on November 09, 2017
Changes
- Bug fixes and binding updates
Vala 0.34.11
released on October 08, 2017
Changes
- Bug fixes and binding updates
Vala 0.34.10
released on September 07, 2017
Changes
- Bug fixes and binding updates
Vala 0.34.9
released on June 26, 2017
Changes
- Bug fixes and binding updates
Vala 0.34.8
released on May 02, 2017
Changes
- Bug fixes and binding updates
Vala 0.34.7
released on March 20, 2017
Changes
- Bug fixes and binding updates
Vala 0.34.6
released on March 2, 2017
Changes
- Bug fixes and binding updates.
- Update man pages.
- Update manual.
Vala 0.34.5
released on March 2, 2017
Changes
- Bug fixes and binding updates.
Vala 0.34.4
released on December 5, 2016
Changes
- Bug fixes.
Vala 0.34.3
released on November 22, 2016
Changes
- Bug fixes and binding updates.
Vala 0.34.2
released on October 23, 2016
Changes
- Bug fixes and binding updates.
Vala 0.34.1
released on October 9, 2016
Changes
- Add support for the \v escape character.
- Bug fixes and binding updates.
Vala 0.34.0
released on September 19, 2016
Changes
- Bug fixes and binding updates.
Vala 0.32.1
released on June 20, 2016
Changes
- Bug fixes and binding updates.
Vala 0.30.2
released on June 20, 2016
Changes
- Bug fixes and binding updates.
Vala 0.32.0
released on March 21, 2016
Changes
- Bug fixes and binding updates.
Vala 0.31.1
released on February 7, 2016
Changes
- Introduce [Version] attribute.
Require and target GLib >= 2.32.
- Bug fixes and binding updates.
Vala 0.30.1
released on January 31, 2016
Changes
- Bug fixes and binding updates.
Vala 0.30.0
released on September 18, 2015
Changes
- Binding updates.
Vala 0.29.3
released on August 11, 2015
Changes
- Add --shared-library option for GIR files.
- Bug fixes and binding updates.
Vala 0.29.2
released on June 22, 2015
Changes
- Bug fixes and binding updates.
Vala 0.29.1
released on May 27, 2015
Changes
- Binding updates.
Vala 0.28.1
released on August 11, 2015
Changes
- Binding updates.
Vala 0.28.0
released on March 22, 2015
Changes
- Binding updates.
Vala 0.27.2
released on March 18, 2015
Changes
- Bug fixes and binding updates.
Vala 0.27.1
released on January 12, 2015
Changes
- Print compiler messages in color.
- Add clutter-gdk-1.0 bindings.
- Add clutter-gst-3.0 bindings.
- Add clutter-x11-1.0 bindings.
- Add rest-extras-0.7 bindings.
- Bug fixes and binding updates.
Vala 0.26.2
released on January 12, 2015
Changes
- Bug fixes and binding updates.
Vala 0.26.1
released on October 13, 2014
Changes
- Bug fixes and binding updates.
Vala 0.26.0
released on September 22, 2014
Changes
- Bug fix and binding updates.
Vala 0.25.4
released on September 15, 2014
Changes
- Add option --vapi-comments.
- Bug fixes and binding updates.
Vala 0.25.3
released on September 1, 2014
Changes
- Bug fixes and binding updates.
Vala 0.25.2
released on August 24, 2014
Changes
Require and target GLib >= 2.24.
- Report warning for private struct fields.
- Replace webkit2gtk-3.0 bindings with webkit2gtk-4.0 bindings.
- Always build vapigen.
- Bug fixes and binding updates.
Vala 0.25.1
released on July 23, 2014
Changes
- Support explicit interface method implementation.
- Support (unowned type)[] syntax.
- Support non-literal length in fixed-size arrays.
- Mark regular expression literals as stable.
- GIR parser updates.
- Add webkit2gtk-3.0 bindings.
- Add gstreamer-allocators-1.0 and gstreamer-riff-1.0 bindings.
- Bug fixes and binding updates.
Vala 0.24.0
released on March 24, 2014
Changes
- Bug fixes and binding updates.
Vala 0.23.3
released on February 18, 2014
Changes
- Bug fixes and binding updates.
Vala 0.23.2
released on February 5, 2014
Changes
- Bind GDK event structures as compact classes.
- Switch gdk-x11-3.0 bindings to .gir.
- Switch librsvg-2.0 bindings to .gir.
- Bug fixes and binding updates.
Vala 0.23.1
released on December 22, 2013
Changes
- Switch libnotify bindings to .gir.
- Add libpeas-gtk-1.0 bindings.
- Add xcb-icccm bindings.
- Bug fixes and binding updates.
Vala 0.22.1
released on November 13, 2013
Changes
- GIR parser updates.
- Bug fixes and binding updates.
Vala 0.22.0
released on September 23, 2013
Changes
- Support chain up to constructv functions.
- Bug fixes and binding updates.
Vala 0.21.2
released on September 13, 2013
Changes
- Recognize ref/unref functions in .gir files.
- Add geocode-glib bindings.
- Bug fixes and binding updates.
Vala 0.21.1
released on August 2, 2013
Changes
- Support \uXXXX escape sequences.
- Support specifying vfunc order in interfaces to define ABI.
- Support GTK+ widget templates.
- Bug fixes and binding updates.
Vala 0.20.1
released on April 8, 2013
Changes
- Bug fixes.
Vala 0.20.0
released on March 26, 2013
Changes
- Bug fixes and binding updates.
Vala 0.19.0
released on February 20, 2013
Changes
- Support scope = "async" attribute for parameters.
- Add --api-version option.
- Add atspi-2 bindings.
- Add gstreamer-rtsp-server-1.0 bindings.
- Bug fixes and binding updates.
Vala 0.18.1
released on November 13, 2012
Changes
- Bug fixes and binding updates.
Vala 0.18.0
released on September 24, 2012
Changes
- Bug fixes.
Vala 0.17.7
released on September 16, 2012
Changes
- Add libgnome-menu-3.0 bindings.
- Bug fixes and binding updates.
Vala 0.17.6
released on September 3, 2012
Changes
- Bug fixes and binding updates.
Vala 0.17.5
released on August 20, 2012
Changes
- Support subclassing of GLib.Source.
- Switch pango bindings to .gir.
- Add gstreamer-1.0 core bindings.
- Add gst-plugins-base-1.0 bindings.
- Add gobject-introspection-1.0 bindings.
- Bug fixes and binding updates.
Vala 0.17.4
released on August 6, 2012
Changes
- Warn when accessing static members with an instance reference.
- Recompute length when casting between array types.
Support [GenericAccessors] attribute for interfaces.
- Deprecate implicit .begin for async methods.
- Drop Dova profile.
- Drop POSIX profile.
- Bug fixes and binding updates.
Vala 0.17.3
released on July 16, 2012
Changes
Require and target GLib >= 2.18.
- Support async creation methods.
- Bug fixes and binding updates.
Vala 0.17.2
released on June 24, 2012
Changes
- Bug fixes and binding updates.
Vala 0.16.1
released on June 23, 2012
Changes
- Bug fixes and binding updates.
Vala 0.17.1
released on June 2, 2012
Changes
- Improve assertion messages.
- Add --enable-gobject-tracing commandline option.
- Bug fixes and binding updates.
Vala 0.17.0
released on April 28, 2012
Changes
- Support simple method-level profiling.
- Add VALA_CHECK_MODULES and VALA_PROG_VAPIGEN to vala.m4.
- Bug fixes and binding updates.
Vala 0.16.0
released on March 26, 2012
Changes
- Add udisks2 bindings.
- Bug fixes and binding updates.
Vala 0.15.2
released on February 25, 2012
Changes
- Switch poppler-glib bindings to .gir.
- Many bug fixes and binding updates.
Vala 0.14.2
released on January 31, 2012
Changes
- Add libnl-3.0 bindings.
- Add packagekit-glib2 bindings.
- Add xtst bindings.
- Many bug fixes and binding updates.
Vala 0.15.1
released on January 26, 2012
Changes
- Support arrays with nullable elements.
Add <doc> support to .gir reader and writer.
- Switch clutter-gtk-1.0 bindings to .gir.
- Switch gio-2.0 bindings to .gir.
- Add cogl-pango-1.0 bindings.
- Add gdl-3.0 bindings.
- Add libnl-3.0 bindings.
- Add packagekit-glib2 bindings.
- Add xtst bindings.
- Many bug fixes and binding updates.
Vala 0.15.0
released on December 5, 2011
Changes
- Manage memory of GQueue elements.
- Switch atk bindings to .gir.
- Switch gdk-pixbuf-2.0 bindings to .gir.
- Switch gdk-3.0 bindings to .gir.
- Add libwnck-3.0 bindings.
- Many bug fixes and binding updates.
Vala 0.14.1
released on November 30, 2011
Changes
- Add libwnck-3.0 bindings.
- Many bug fixes and binding updates.
Vala 0.14.0
released on September 17, 2011
Changes
- Bug fixes and binding updates.
Vala 0.13.4
released on September 7, 2011
Changes
- Switch gudev-1.0 bindings to .gir.
- Switch mx-1.0 bindings to .gir.
- Many bug fixes and binding updates.
Vala 0.13.3
released on August 22, 2011
Changes
- Switch pangocairo bindings to .gir.
- Bug fixes.
Vala 0.13.2
released on August 16, 2011
Changes
- Enable flow analysis for out parameters.
- Refactor attribute handling.
- Add gedit-3.0 bindings.
- Add gtksourceview-3.0 bindings.
- Add rest-0.7 bindings.
- Add vte-2.90 bindings.
- Switch clutter-1.0 bindings to .gir.
- Switch libgdata bindings to .gir.
- Switch libsoup bindings to .gir.
- Many bug fixes and binding updates.
Vala 0.13.1
released on July 6, 2011
Changes
- Many bug fixes and binding updates.
Vala 0.13.0
released on June 17, 2011
Changes
- More refactoring in the code generator.
- Improvements to the .gir reader.
- Switch JSON-GLib bindings to .gir.
- Drop deprecated support for D-Bus GLib in favor of GDBus.
- Many bug fixes and binding updates.
Vala 0.12.1
released on June 1, 2011
Changes
- Many bug fixes and binding updates.
Vala 0.12.0
released on April 3, 2011
Changes
- Add get_next_char to string class.
- Many bug fixes and binding updates.
Vala 0.11.7
released on March 16, 2011
Changes
- Add support for async signal handlers (Frederik Sdun).
- More refactoring in the code generator (Luca Bruno).
- Improvements to the .gir writer (Michal Hruby).
- Many bug fixes and binding updates.
Vala 0.10.4
released on March 12, 2011
Changes
- Bug fixes and binding updates.
Vala 0.11.6
released on February 14, 2011
Changes
- Add parse and try_parse methods to boolean and numeric types.
- Add clutter-gtk-1.0 bindings.
- Add pixmap-1 bindings (Evan Nemerson).
- Many bug fixes and binding updates.
Vala 0.10.3
released on January 22, 2011
Changes
- Bug fixes and binding updates.
Vala 0.11.5
released on January 21, 2011
Changes
- Add last_index_of and last_index_of_char to string class.
- More refactoring in the code generator (Luca Bruno).
- Improvements to the .gir writer (Michal Hruby).
- Many bug fixes and binding updates.
Vala 0.11.4
released on January 15, 2011
Changes
- Add index_of, index_of_char, and char_count to string class.
- Many bug fixes and binding updates.
Vala 0.11.3
released on January 5, 2011
Changes
Support BusName sender parameter in GDBus servers.
- More refactoring in the code generator.
- Many bug fixes and binding updates.
Vala 0.10.2
released on December 28, 2010
Changes
- Bug fixes and binding updates.
Vala 0.11.2
released on November 8, 2010
Changes
- Update libnotify bindings to 0.7.0.
- Improvements to the .gir reader.
- Bug fixes and binding updates.
Vala 0.10.1
released on October 26, 2010
Changes
- Remove outdated GTK+ 3 bindings.
- Many bug fixes and binding updates.
Vala 0.11.1
released on October 25, 2010
Changes
Require and target GLib >= 2.16.
- Guard access to out parameters to allow null arguments.
- Add support for local constants.
- Support file descriptor passing with GDBus.
- Support cached property values in GDBus clients.
- Support Cancellable parameter in GDBus clients.
- Support no-reply methods in GDBus clients and servers.
- More refactoring in the code generator.
- Many bug fixes and binding updates.
Vala 0.11.0
released on October 4, 2010
Changes
- Use byte indices for strings.
- Use uint8[] for binary data in bindings.
- Add support for parallel compilation.
- Improve compiler performance.
- More refactoring in the code generator.
- Many bug fixes and binding updates.
Vala 0.10.0
released on September 18, 2010
Changes
- Port GIR parser and writer to GIR version 1.2.
- Update GLib bindings to 2.26 branch.
- Bug fixes.
Vala 0.9.8
released on September 4, 2010
Changes
- Add --fatal-warnings commandline option.
- Deprecate string.len () in favor of string.length.
- Deprecate use of D-Bus GLib in favor of GDBus.
- Many bug fixes and binding updates.
Vala 0.9.7
released on August 19, 2010
Changes
- Fix regression introduced by codegen refactoring.
Vala 0.9.6
released on August 18, 2010
Changes
- Drop deprecated support for assigning to construct properties.
- Some refactoring in the code generator.
- Bug fixes in bindings and vapigen.
Vala 0.9.5
released on August 9, 2010
Changes
- Add version suffix to support parallel installation.
- Define VALA_X_Y according to compiler version.
- Enable version header by default.
- Add vala.m4 with VALA_CHECK_PACKAGES macro.
- Add gedit-2.20 bindings (Andrea Del Signore).
- Add tokyocabinet bindings (Evan Nemerson).
- Various improvements to the Dova profile.
- Many bug fixes and binding updates.
Vala 0.9.4
released on July 27, 2010
Changes
- Append documentation comments to generated C files.
Skip <doc> tags in .gir files.
- Various improvements to the Dova profile.
- Many bug fixes and binding updates.
Vala 0.9.3
released on July 14, 2010
Changes
- Support newlines in double quoted string literals.
- Add experimental support for main blocks.
- Add experimental vala tool to compile and run code.
- Initial support for generic delegates.
- Support using GClosure for delegate parameters.
- Support GBoxed-based memory management.
- Improvements to the .gir reader and writer.
- Various improvements to the Dova profile.
- Many bug fixes and binding updates.
Vala 0.9.2
released on June 20, 2010
Changes
- Initial support for GDBus-based clients and servers.
- Support implicit and explicit GVariant casts.
- Add support for [Deprecated] attribute.
Add GenericArray as alternative binding to GPtrArray.
- Add gdk-pixbuf-3.0, gdk-3.0, gdk-x11-3.0, and gtk+-3.0 bindings.
- Updates to the GLib bindings.
- Many bug fixes.
Vala 0.9.1
released on June 7, 2010
Changes
- Support constants in enums.
- Deprecate +=/-= syntax to connect/disconnect signal handlers.
- Add experimental support for Dova profile.
Update Genie parser (Jamie McCracken).
- Add clutter-gst-1.0 bindings (Ali Sabil).
- Add gdu and gdu-gtk bindings.
- Add libesmtp bindings (Adrien Bustany).
- Add mx-1.0 bindings (Evan Nemerson).
- Add orc-0.4 bindings (Fabian Deutsch).
- Add rest-extras-0.6 bindings (Adrien Bustany).
- Updates to the GLib, GStreamer, Linux, SQLite, and other bindings.
- Many bug fixes.
Vala 0.8.1
released on April 21, 2010
Changes
- Support constants in enums.
- Add clutter-gst-1.0 bindings (Ali Sabil).
- Add gdu and gdu-gtk bindings.
- Many bug fixes and binding updates.
Vala 0.8.0
released on March 31, 2010
Changes
- Infer type arguments when calling generic methods.
- Support `in' operator for arrays.
- Add experimental support for regular expression literals.
- Add experimental support for chained relational expressions.
- Add va_list support.
- Add clutter-gtk-0.10 bindings (Gordon Allott).
- Add gdl-1.0 bindings (Nicolas Joseph).
- Add gstreamer-app-0.10 bindings (Sebastian Dröge).
- Add gstreamer-cdda-0.10 bindings (Sebastian Dröge).
- Add gudev-1.0 bindings (Jim Nelson).
- Add libgda-report-4.0 bindings (Shawn Ferris).
- Add libgvc (graphviz) bindings (Martin Olsson).
- Add purple bindings (Adrien Bustany).
- Many bug fixes and binding updates.
Vala 0.7.10
released on February 4, 2010
Changes
- Support coalescing operator ??.
- Support to_string and bitwise complement with enums.
- Return handler id when connecting signal handlers.
- Support struct comparison.
- Support constructor chaining in structs.
- Enforce protected member restrictions.
- Improve performance of flow analysis.
- Support automatic line continuations in Genie.
- Improvements to the .gir reader and writer.
- Add --enable-mem-profiler commandline option.
- Many bug fixes and binding updates.
Vala 0.7.9
released on December 19, 2009
Changes
- Support array and string slicing.
- Add --symbols commandline option.
- Add avahi-gobject bindings (Sebastian Noack).
- Add ccss-1 bindings (Ali Sabil).
- Add libarchive bindings (Julian Andres Klode).
- Add libmagic bindings (Jens Georg).
- Add readline bindings (Jukka-Pekka Iivonen).
- Add twitter-glib-1.0 bindings (Adrien Bustany).
- Many bug fixes and binding updates.
Vala 0.7.8
released on November 4, 2009
Changes
- Support constructor chain up to GObject using Object (...).
- Add syntax for string templates.
Support (!) non-null casts.
- Many bug fixes and binding updates.
Vala 0.7.7
released on September 27, 2009
Changes
- Support `using' directives inside namespaces.
- Use const only for immutable structs.
- Support string marshalling for enums in D-Bus (Didier Ptitjes).
Update Genie parser (Jamie McCracken).
- Add libgda-4.0 bindings (Shawn Ferris).
- Many bug fixes for closures and async methods.
Vala 0.7.6
released on September 18, 2009
Changes
- Add support for closures.
- Improve support for asynchronous methods.
- Support async methods in D-Bus servers.
- Add clutter-1.0 bindings (Rob Taylor).
- Add GVariant, GSettings, and dconf bindings (Ryan Lortie).
- Add linux, libnl-1, and libasound bindings (Michael 'Mickey' Lauer).
- Add gnutls bindings (Jiří Zárevúcky).
- Add librest bindings (Adrien Bustany).
- Many bug fixes and binding updates.
Vala 0.7.5
released on August 2, 2009
Changes
- Add support for static properties.
- Add support for delegate properties.
- Support virtual default handler for signals.
- Add limited support for derived compact classes.
- Add libgdata bindings (Víctor Manuel Jáquez Leal).
- Add libusb-1.0 bindings (Evan Nemerson).
- Many bug fixes and binding updates.
Vala 0.7.4
released on June 28, 2009
Changes
- Add support for array properties.
- Support implicit and explicit GValue casts.
- Add initial support for generic methods.
- Add postgres bindings.
- Many bug fixes and binding updates.
Vala 0.7.3
released on May 26, 2009
Changes
- Add initial support for POSIX profile.
- Add --vapi and --gir commandline options.
- Add initial x11, xcb, and cairo-xcb bindings.
- Many bug fixes and binding updates.
Vala 0.7.2
released on May 7, 2009
Changes
- Improvements to the .gir reader and writer (Didier Ptitjes).
- Many bug fixes and binding updates.
Vala 0.7.1
released on April 20, 2009
Changes
- Introduce new syntax to connect/disconnect signal handlers.
- Add experimental support for fixed-length arrays.
Update Genie parser (Jamie McCracken).
- Updates to the GLib, Cairo, GTK+, GStreamer, and POSIX bindings.
- Many bug fixes.
Vala 0.7.0
released on April 5, 2009
Changes
- Do not generate header files unless requested by the -H commandline
- option. This requires changes in the build system of Vala projects.
- Support conditional compilation.
Vala 0.6.1
released on April 12, 2009
Changes
- Updates to the GLib, Cairo, GTK+, GStreamer, and POSIX bindings.
- Minor bug fixes.
Vala 0.6.0
released on March 30, 2009
Changes
- Improvements to the .gir reader and writer (Didier Ptitjes).
- Add librsvg-2.0 bindings (Evan Nemerson).
- Add Maemo libosso bindings (Jukka-Pekka Iivonen).
Add V4L2 bindings (Matías De la Puente).
- Many bug fixes.
Vala 0.5.7
released on February 20, 2009
Changes
- Support signals in static D-Bus clients.
- Various improvements to asynchronous method support (Ryan Lortie).
- Report unused internal methods.
- Extend POSIX bindings.
- Add FUSE bindings (John Carr).
- Add libdaemon bindings (Jukka-Pekka Iivonen).
- Many bug fixes.
Vala 0.5.6
released on January 18, 2009
Changes
- Do not require libgee for custom indexer access.
- Add Log.FILE, Log.LINE, and Log.METHOD constants.
- Various improvements to the .gir reader.
- Add Lua bindings (pancake and Phil Housley).
- Add MySQL bindings (Jukka-Pekka Iivonen).
- Add partial POSIX bindings.
- Many bug fixes.
Vala 0.5.5
released on January 10, 2009
Changes
- Improve syntax of owned property getters.
- Add --enable-deprecated and --enable-experimental commandline options.
- Remove --disable-non-null commandline option.
- Many bug fixes.
Vala 0.5.4
released on January 7, 2009
Changes
- Support array initializers as expressions.
- Support += to efficiently append elements to arrays.
- Calculate length for null-terminated arrays.
- Support initializers for multi-dimensional arrays.
Add owned' keyword to replace #'.
- Various fixes in coroutine support.
- Support boxed structs as GObject properties.
- Many bug fixes.
Vala 0.5.3
released on December 16, 2008
Changes
- Rewrite D-Bus server support to directly use libdbus.
- Register structs as boxed types.
- Improve error reporting on invalid code.
- Support private class fields and class destructors.
- Add partial raptor and rasqal bindings.
- Drop vala-gen-project, moved to vtg.
- Many bug fixes.
Vala 0.5.2
released on December 1, 2008
Changes
- Report uninitialized local variables.
- Report unused fields, methods, and local variables.
- Fix error handling in complex statements.
- Improve support for generic types.
- Support parameter arrays in bindings.
- Do not require libgee for foreach statements.
- Support enums in D-Bus clients and servers.
- Support structs in hash tables in D-Bus servers.
- Experimental static D-Bus client support.
- Add --dump-tree commandline option to write code tree to file.
- Many bug fixes.
Vala 0.5.1
released on November 3, 2008
Changes
- Support type checks for error domains and error codes.
- Experimental support for yield statements and coroutines.
- Support GValue and GHashTable in D-Bus clients.
- Various improvements to the .gir reader.
- Drop deprecated support for static classes.
- Modularize code generator.
- Many bug fixes.
Vala 0.4.0
released on October 20, 2008
Changes
- Support more flexible constructors.
- Partial support for reading and writing .gir files.
- Improve compiler performance.
- Copy arrays where necessary.
- Basic support for static properties.
- Partial support for struct holding object references.
- Add tracker indexer bindings (Roberto Majadas)
- Updates to the GLib, GTK+, and GStreamer bindings.
- Many bug fixes.