Fix writing of async creation methods in VAPI files
[vala-lang.git] / NEWS
blobe02d931e67b1f35af5bfc66c1f4c537d08b13a60
1 Vala 0.9.2
2 ==========
4  * Initial support for GDBus-based clients and servers.
5  * Support implicit and explicit GVariant casts.
6  * Add support for [Deprecated] attribute.
7  * Add GenericArray as alternative binding to GPtrArray.
8  * Add gdk-pixbuf-3.0, gdk-3.0, gdk-x11-3.0, and gtk+-3.0 bindings.
9  * Updates to the GLib bindings.
10  * Many bug fixes.
12 Vala 0.9.1
13 ==========
15  * Support constants in enums.
16  * Deprecate +=/-= syntax to connect/disconnect signal handlers.
17  * Add experimental support for Dova profile.
18  * Update Genie parser (Jamie McCracken).
19  * Add clutter-gst-1.0 bindings (Ali Sabil).
20  * Add gdu and gdu-gtk bindings.
21  * Add libesmtp bindings (Adrien Bustany).
22  * Add mx-1.0 bindings (Evan Nemerson).
23  * Add orc-0.4 bindings (Fabian Deutsch).
24  * Add rest-extras-0.6 bindings (Adrien Bustany).
25  * Updates to the GLib, GStreamer, Linux, SQLite, and other bindings.
26  * Many bug fixes.
28 Vala 0.8.0
29 ==========
31  * Infer type arguments when calling generic methods.
32  * Support `in' operator for arrays.
33  * Add experimental support for regular expression literals.
34  * Add experimental support for chained relational expressions.
35  * Add va_list support.
36  * Add clutter-gtk-0.10 bindings (Gordon Allott).
37  * Add gdl-1.0 bindings (Nicolas Joseph).
38  * Add gstreamer-app-0.10 bindings (Sebastian Dröge).
39  * Add gstreamer-cdda-0.10 bindings (Sebastian Dröge).
40  * Add gudev-1.0 bindings (Jim Nelson).
41  * Add libgda-report-4.0 bindings (Shawn Ferris).
42  * Add libgvc (graphviz) bindings (Martin Olsson).
43  * Add purple bindings (Adrien Bustany).
44  * Many bug fixes and binding updates.
46 Vala 0.7.10
47 ===========
49  * Support coalescing operator ??.
50  * Support to_string and bitwise complement with enums.
51  * Return handler id when connecting signal handlers.
52  * Support struct comparison.
53  * Support constructor chaining in structs.
54  * Enforce protected member restrictions.
55  * Improve performance of flow analysis.
56  * Support automatic line continuations in Genie.
57  * Improvements to the .gir reader and writer.
58  * Add --enable-mem-profiler commandline option.
59  * Many bug fixes and binding updates.
61 Vala 0.7.9
62 ==========
64  * Support array and string slicing.
65  * Add --symbols commandline option.
66  * Add avahi-gobject bindings (Sebastian Noack).
67  * Add ccss-1 bindings (Ali Sabil).
68  * Add libarchive bindings (Julian Andres Klode).
69  * Add libmagic bindings (Jens Georg).
70  * Add readline bindings (Jukka-Pekka Iivonen).
71  * Add twitter-glib-1.0 bindings (Adrien Bustany).
72  * Many bug fixes and binding updates.
74 Vala 0.7.8
75 ==========
77  * Support constructor chain up to GObject using Object (...).
78  * Add syntax for string templates.
79  * Support (!) non-null casts.
80  * Many bug fixes and binding updates.
82 Vala 0.7.7
83 ==========
85  * Support `using' directives inside namespaces.
86  * Use const only for immutable structs.
87  * Support string marshalling for enums in D-Bus (Didier Ptitjes).
88  * Update Genie parser (Jamie McCracken).
89  * Add libgda-4.0 bindings (Shawn Ferris).
90  * Many bug fixes for closures and async methods.
92 Vala 0.7.6
93 ==========
95  * Add support for closures.
96  * Improve support for asynchronous methods.
97  * Support async methods in D-Bus servers.
98  * Add clutter-1.0 bindings (Rob Taylor).
99  * Add GVariant, GSettings, and dconf bindings (Ryan Lortie).
100  * Add linux, libnl-1, and libasound bindings (Michael 'Mickey' Lauer).
101  * Add gnutls bindings (Jiří Zárevúcky).
102  * Add librest bindings (Adrien Bustany).
103  * Many bug fixes and binding updates.
105 Vala 0.7.5
106 ==========
108  * Add support for static properties.
109  * Add support for delegate properties.
110  * Support virtual default handler for signals.
111  * Add limited support for derived compact classes.
112  * Add libgdata bindings (Víctor Manuel Jáquez Leal).
113  * Add libusb-1.0 bindings (Evan Nemerson).
114  * Many bug fixes and binding updates.
116 Vala 0.7.4
117 ==========
119  * Add support for array properties.
120  * Support implicit and explicit GValue casts.
121  * Add initial support for generic methods.
122  * Add postgres bindings.
123  * Many bug fixes and binding updates.
125 Vala 0.7.3
126 ==========
128  * Add initial support for POSIX profile.
129  * Add --vapi and --gir commandline options.
130  * Add initial x11, xcb, and cairo-xcb bindings.
131  * Many bug fixes and binding updates.
133 Vala 0.7.2
134 ==========
136  * Improvements to the .gir reader and writer (Didier Ptitjes).
137  * Many bug fixes and binding updates.
139 Vala 0.7.1
140 ==========
142  * Introduce new syntax to connect/disconnect signal handlers.
143  * Add experimental support for fixed-length arrays.
144  * Update Genie parser (Jamie McCracken).
145  * Updates to the GLib, Cairo, GTK+, GStreamer, and POSIX bindings.
146  * Many bug fixes.
148 Vala 0.7.0
149 ==========
151  * Do not generate header files unless requested by the -H commandline
152    option. This requires changes in the build system of Vala projects.
153  * Support conditional compilation.
155 Vala 0.6.0
156 ==========
158  * Improvements to the .gir reader and writer (Didier Ptitjes).
159  * Add librsvg-2.0 bindings (Evan Nemerson).
160  * Add Maemo libosso bindings (Jukka-Pekka Iivonen).
161  * Add V4L2 bindings (Matías De la Puente).
162  * Many bug fixes.
164 Vala 0.5.7
165 ==========
167  * Support signals in static D-Bus clients.
168  * Various improvements to asynchronous method support (Ryan Lortie).
169  * Report unused internal methods.
170  * Extend POSIX bindings.
171  * Add FUSE bindings (John Carr).
172  * Add libdaemon bindings (Jukka-Pekka Iivonen).
173  * Many bug fixes.
175 Vala 0.5.6
176 ==========
178  * Do not require libgee for custom indexer access.
179  * Add Log.FILE, Log.LINE, and Log.METHOD constants.
180  * Various improvements to the .gir reader.
181  * Add Lua bindings (pancake and Phil Housley).
182  * Add MySQL bindings (Jukka-Pekka Iivonen).
183  * Add partial POSIX bindings.
184  * Many bug fixes.
186 Vala 0.5.5
187 ==========
189  * Improve syntax of owned property getters.
190  * Add --enable-deprecated and --enable-experimental commandline options.
191  * Remove --disable-non-null commandline option.
192  * Many bug fixes.
194 Vala 0.5.4
195 ==========
197  * Support array initializers as expressions.
198  * Support += to efficiently append elements to arrays.
199  * Calculate length for null-terminated arrays.
200  * Support initializers for multi-dimensional arrays.
201  * Add `owned' keyword to replace `#'.
202  * Various fixes in coroutine support.
203  * Support boxed structs as GObject properties.
204  * Many bug fixes.
206 Vala 0.5.3
207 ==========
209  * Rewrite D-Bus server support to directly use libdbus.
210  * Register structs as boxed types.
211  * Improve error reporting on invalid code.
212  * Support private class fields and class destructors.
213  * Add partial raptor and rasqal bindings.
214  * Drop vala-gen-project, moved to vtg.
215  * Many bug fixes.
217 Vala 0.5.2
218 ==========
220  * Report uninitialized local variables.
221  * Report unused fields, methods, and local variables.
222  * Fix error handling in complex statements.
223  * Improve support for generic types.
224  * Support parameter arrays in bindings.
225  * Do not require libgee for foreach statements.
226  * Support enums in D-Bus clients and servers.
227  * Support structs in hash tables in D-Bus servers.
228  * Experimental static D-Bus client support.
229  * Add --dump-tree commandline option to write code tree to file.
230  * Many bug fixes.
232 Vala 0.5.1
233 ==========
235  * Support type checks for error domains and error codes.
236  * Experimental support for yield statements and coroutines.
237  * Support GValue and GHashTable in D-Bus clients.
238  * Various improvements to the .gir reader.
239  * Drop deprecated support for static classes.
240  * Modularize code generator.
241  * Many bug fixes.
243 Vala 0.4.0
244 ==========
246  * Support more flexible constructors.
247  * Partial support for reading and writing .gir files.
248  * Improve compiler performance.
249  * Copy arrays where necessary.
250  * Basic support for static properties.
251  * Partial support for struct holding object references.
252  * Add tracker indexer bindings (Roberto Majadas)
253  * Updates to the GLib, GTK+, and GStreamer bindings.
254  * Many bug fixes.
256 Vala 0.3.5
257 ==========
259  * Notify on property changes by default (Jared Moore)
260  * Add unique-1.0 bindings (Phil Housley)
261  * Updates to the GLib, GTK+, and GStreamer bindings.
262  * Many bug fixes.
264 Vala 0.3.4
265 ==========
267  * Various improvements to D-Bus client and service support.
268  * Basic support for detailed signals.
269  * Check types of printf arguments.
270  * Support `in' operator for Gee.Collection and Gee.Map (Jamie McCracken)
271  * Add libgsf-1 bindings (Michael Lawrence)
272  * Add loudmouth-1.0 bindings (Ali Sabil)
273  * Updates to the GLib, GTK+, and GStreamer bindings.
274  * Many bug fixes.
276 Vala 0.3.3
277 ==========
279  * Support overriding default method handlers of signals.
280  * Support dynamic access to properties and signals of GObjects.
281  * Experimental support for nullable value types.
282  * Improve support for classes not deriving from GLib.Object.
283  * Support """verbatim strings""".
284  * Add parser for Genie (Jamie McCracken)
285  * Experimental support for arrays of arrays.
286  * Documentation improvements (Phil Housley)
287  * Improvements to D-Bus support (Ali Sabil, Philip Van Hoof, Yu Feng)
288  * Add libepc-1.0 bindings (Ali Sabil)
289  * Add libtiff bindings (Christian Meyer)
290  * Updates to the GStreamer bindings (Ali Sabil and Jaap A. Haitsma)
291  * Many bug fixes and performance improvements.
293 Vala 0.3.2
294 ==========
296  * Add support for class constructors, class fields, and class methods.
297  * Various improvements to methods in D-Bus services.
298  * Add support for properties and signals in D-Bus services (Yu Feng)
299  * Add Time API to GLib bindings.
300  * Documentation improvements (Phil Housley)
301  * Updates to the GLib and GTK+ bindings.
302  * Many bug fixes.
304 Vala 0.3.1
305 ==========
307  * Enable non-null types by default.
308  * Add --disable-non-null commandline option.
309  * New handwritten parser.
310  * Support virtual methods in interfaces.
311  * Add `dynamic' type modifier for D-Bus client support.
312  * Add experimental support for writing D-Bus services.
313  * Don't require `new' operator for structs.
314  * Warn when using deprecated syntax.
315  * Add libsexy bindings (Evan Nemerson)
316  * Updates to the GLib and GTK+ bindings.
317  * Many bug fixes.
319 Vala 0.2.0
320 ==========
322  * Support nested namespaces.
323  * Support static constructors.
324  * Register enums with GType (Marc-André Lureau)
325  * Small syntax change for default values of properties.
326  * Add --verbose commandline option (Daniel Silverstone)
327  * Improve pointer support.
328  * Add GNOME Keyring bindings (Andrea Del Signore)
329  * Add SDL bindings (Levi Bard)
330  * Add libftdi bindings (Evan Nemerson)
331  * Updates to the GLib, GTK+, GStreamer, and SQLite bindings.
332  * Many bug fixes all over the place.
334 Vala 0.1.7
335 ==========
337  * Support private property accessors.
338  * Support default values for properties.
339  * Improve support for array length and delegate target parameters.
340  * Improve delegate and signal handler support.
341  * Introduce new syntax to declare errordomains.
342  * Improve exception support.
343  * Report errors for missing return statements.
344  * Report warnings for unreachable code.
345  * Improve support for generic types.
346  * Support pointer member access and pointer element access.
347  * Support pointer arithmetic.
348  * Add --quiet commandline option (Emmanuele Bassi)
349  * Add WebKit bindings.
350  * Add JSON-GLib bindings (Ali Sabil)
351  * Add goocanvas bindings (Roberto Majadas)
352  * Add hildon-fm-2 bindings (Levi Bard)
353  * Add taglib bindings (Andreas Brauchli)
354  * Add libusb bindings (Evan Nemerson)
355  * Add bzip2 bindings (Maciej Piechotka)
356  * Updates to the GLib, GTK+, GStreamer, and libsoup bindings.
357  * Fixes for Windows.
358  * Many bug fixes.
360 Vala 0.1.6
361 ==========
363  * Add support for instance delegates.
364  * Support conditional method compilation.
365  * Add support for nested generic types.
366  * Add size_t and ssize_t.
367  * Use non-null types by default with --enable-non-null option.
368  * Limited support for nullable types.
369  * Add basic support for method pre- and postconditions.
370  * Improve pointer support.
371  * Always enable memory management.
372  * Add libgnome-menu bindings (Roberto Majadas)
373  * Add liboobs-1 bindings (Roberto Majadas)
374  * Updates to the GLib, GTK+, GStreamer, SQLite, and libxml2 bindings.
375  * Small documentation improvements.
376  * Many bug fixes.
378 Vala 0.1.5
379 ==========
381  * Add Vala Project Generator.
382  * Support `in` operator for enums.
383  * Support typeof for generic type parameters.
384  * Replace gidlgen by vala-gen-introspect with a real C parser.
385  * Update all bindings to use vala-gen-introspect.
386  * Fix many gcc warnings.
387  * Fix build with Cygwin and MinGW (Yaakov Selkowitz).
388  * Many bug fixes.
390 Vala 0.1.4
391 ==========
393  * Use .vapi as file extension for bindings.
394  * Add Vala Reference Manual.
395  * Add support for object initializers.
396  * Emit #line directives in debug mode.
397  * Add --basedir option.
398  * Support creation methods in structs.
399  * Add support for [Notify] attribute for properties.
400  * Add experimental support for registering new fundamental classed types.
401  * Improve support for non-GObject classes.
402  * Improve error reporting.
403  * Add vapicheck to verify generated bindings (Mathias Hasselmann).
404  * Drop xml_pp dependency (Alberto Ruiz).
405  * Many bug fixes.
407 Vala 0.1.3
408 ==========
410  * Convert reference-type structs to classes for a more consistent type system.
411  * Support `as` operator (Mathias Hasselmann).
412  * Improve array support.
413  * Experimental D-Bus client support.
414  * Add GConf bindings.
415  * Add libgnome and libgnomeui bindings.
416  * Add Glade bindings.
417  * Add libnotify bindings (Nicolas Christener, Roland Hostettler).
418  * Add GnomeVFS bindings.
419  * Add GtkSourceView bindings.
420  * Add Panel Applet bindings.
421  * Add GNOME Desktop Library bindings.
422  * Add libsoup bindings.
423  * Add libwnck bindings.
424  * Add GtkMozEmbed bindings (Alberto Ruiz).
425  * Add Poppler bindings (Alberto Ruiz).
426  * Add Enchant bindings (Mathias Hasselmann).
427  * Add Hildon bindings (Marcelo Lira).
428  * Add SQLite bindings.
429  * Add curses bindings (Ed Schouten).
430  * Build system fixes (Nicolas Trangez).
431  * Add manual pages for gidlgen and vapigen (Kumar Appaiah).
432  * Many bug fixes all over the place.
434 Vala 0.1.2
435 ==========
437  * Use and support libgee collection library (internal copy for now).
438  * Performance improvements.
439  * Improve support for generic types.
440  * Many memory management fixes.
441  * Add support for inner classes.
442  * Add --cc and -X commandline options to control the C compiler.
443  * Use GSlice for reference-type structs.
444  * Add experimental GStreamer bindings.
446 Vala 0.1.1
447 ==========
449  * Support simple exception handling.
450  * Improve array and string support.
451  * Support multi-dimensional arrays.
452  * Add --thread commandline option.
453  * Improve bindings.
454  * Bug fixes.
456 Vala 0.1.0
457 ==========
459  * Add commandline options for running the C compiler and linker.
460  * Use # modifier for reference transfer in method parameters.
461  * Replace callback keyword by delegate.
462  * Improve and update GLib and GTK+ bindings.
463  * Add experimental GVFS binding.
464  * C89/MSVC portability fixes (Hans Breuer).
465  * Refactor code generator.
466  * Add experimental bindings generator.
467  * Many bug fixes.
469 Vala 0.0.9
470 ==========
472  * Add support for defining new generic classes.
473  * Improve array support.
474  * Memory management fixes.
475  * Improve abstract property support.
476  * Add basic support for flags types.
477  * Improve GLib binding.
478  * Add VTE binding.
479  * Many bug fixes.
481 Vala 0.0.8
482 ==========
484  * Add support for overridden properties.
485  * Support properties and signals in interfaces.
486  * Improve interface runtime suport.
487  * Verify that classes implement all abstract and interface methods.
488  * Basic compile-time support for generic types.
489  * Default to strong references for return values and local variables.
490  * Improve signal support.
491  * Add support for pointers.
492  * Improve support for numeric types.
493  * Support writing GTypeModule-based plug-ins.
494  * Improve manual memory management support.
495  * Improve GTK+ bindings.
496  * Many bug fixes.
498 Vala 0.0.7
499 ==========
501  * New object construction syntax.
502  * Interface implementations don't have to specify override anymore.
503  * Improve interface support.
505 Vala 0.0.6
506 ==========
508  * Improve interface support.
509  * Support do loops.
510  * Improve array support.
511  * Improve enum support.
512  * Add automated testing infrastructure.
513  * Fixes for prefix and postfix operators.
514  * Add more types to GLib bindings.
515  * Many bug fixes.
517 Vala 0.0.5
518 ==========
520  * Support base access.
521  * Support typeof expressions.
522  * Improve array support.
523  * Fix possible memory leak in foreach statements.
524  * Fix many warnings during C compilation.
525  * Improve GTK+ bindings.
527 Vala 0.0.4
528 ==========
530  * Support + operator in strings.
531  * Support unicode character literals.
532  * Add implicit conversions for numeric types.
533  * Improve interface support.
534  * Improve array support.
535  * Support arbitrary signal parameters.
536  * Add threading support.
537  * Support lock statements.
538  * Many improvements to the GTK+ bindings.
540 Vala 0.0.3
541 ==========
543  * Interface fixes.
544  * Support namespace constants.
545  * Support switch statements.
546  * Array creation support.
547  * Provide complete but experimental bindings for GTK+ 2.10 and Cairo 1.2.
548  * Add implicit array length parameter.
549  * Follow package dependencies.
550  * Support hexadecimal and octal integer literals and hexadecimal escape
551    sequences.
552  * Install libvala as shared library.
554 Vala 0.0.2
555 ==========
557  * Support named construction methods.
558  * Basic interface support.
559  * Improve error handling.
560  * Many bug fixes.
563 Vala 0.0.1
564 ==========
566  * Initial release.