Fix nested closures
[vala-lang.git] / NEWS
blob27d9371a14b4e608e7991f0e84d5f94b3b1338e9
1 Vala 0.7.6
2 ==========
4  * Add support for closures.
5  * Improve support for asynchronous methods.
6  * Support async methods in D-Bus servers.
7  * Add clutter-1.0 bindings (Rob Taylor).
8  * Add GVariant, GSettings, and dconf bindings (Ryan Lortie).
9  * Add linux, libnl-1, and libasound bindings (Michael 'Mickey' Lauer).
10  * Add gnutls bindings (Jiří Zárevúcky).
11  * Add librest bindings (Adrien Bustany).
12  * Many bug fixes and binding updates.
14 Vala 0.7.5
15 ==========
17  * Add support for static properties.
18  * Add support for delegate properties.
19  * Support virtual default handler for signals.
20  * Add limited support for derived compact classes.
21  * Add libgdata bindings (Víctor Manuel Jáquez Leal).
22  * Add libusb-1.0 bindings (Evan Nemerson).
23  * Many bug fixes and binding updates.
25 Vala 0.7.4
26 ==========
28  * Add support for array properties.
29  * Support implicit and explicit GValue casts.
30  * Add initial support for generic methods.
31  * Add postgres bindings.
32  * Many bug fixes and binding updates.
34 Vala 0.7.3
35 ==========
37  * Add initial support for POSIX profile.
38  * Add --vapi and --gir commandline options.
39  * Add initial x11, xcb, and cairo-xcb bindings.
40  * Many bug fixes and binding updates.
42 Vala 0.7.2
43 ==========
45  * Improvements to the .gir reader and writer (Didier Ptitjes).
46  * Many bug fixes and binding updates.
48 Vala 0.7.1
49 ==========
51  * Introduce new syntax to connect/disconnect signal handlers.
52  * Add experimental support for fixed-length arrays.
53  * Update Genie parser (Jamie McCracken).
54  * Updates to the GLib, Cairo, GTK+, GStreamer, and POSIX bindings.
55  * Many bug fixes.
57 Vala 0.7.0
58 ==========
60  * Do not generate header files unless requested by the -H commandline
61    option. This requires changes in the build system of Vala projects.
62  * Support conditional compilation.
64 Vala 0.6.0
65 ==========
67  * Improvements to the .gir reader and writer (Didier Ptitjes).
68  * Add librsvg-2.0 bindings (Evan Nemerson).
69  * Add Maemo libosso bindings (Jukka-Pekka Iivonen).
70  * Add V4L2 bindings (Matías De la Puente).
71  * Many bug fixes.
73 Vala 0.5.7
74 ==========
76  * Support signals in static D-Bus clients.
77  * Various improvements to asynchronous method support (Ryan Lortie).
78  * Report unused internal methods.
79  * Extend POSIX bindings.
80  * Add FUSE bindings (John Carr).
81  * Add libdaemon bindings (Jukka-Pekka Iivonen).
82  * Many bug fixes.
84 Vala 0.5.6
85 ==========
87  * Do not require libgee for custom indexer access.
88  * Add Log.FILE, Log.LINE, and Log.METHOD constants.
89  * Various improvements to the .gir reader.
90  * Add Lua bindings (pancake and Phil Housley).
91  * Add MySQL bindings (Jukka-Pekka Iivonen).
92  * Add partial POSIX bindings.
93  * Many bug fixes.
95 Vala 0.5.5
96 ==========
98  * Improve syntax of owned property getters.
99  * Add --enable-deprecated and --enable-experimental commandline options.
100  * Remove --disable-non-null commandline option.
101  * Many bug fixes.
103 Vala 0.5.4
104 ==========
106  * Support array initializers as expressions.
107  * Support += to efficiently append elements to arrays.
108  * Calculate length for null-terminated arrays.
109  * Support initializers for multi-dimensional arrays.
110  * Add `owned' keyword to replace `#'.
111  * Various fixes in coroutine support.
112  * Support boxed structs as GObject properties.
113  * Many bug fixes.
115 Vala 0.5.3
116 ==========
118  * Rewrite D-Bus server support to directly use libdbus.
119  * Register structs as boxed types.
120  * Improve error reporting on invalid code.
121  * Support private class fields and class destructors.
122  * Add partial raptor and rasqal bindings.
123  * Drop vala-gen-project, moved to vtg.
124  * Many bug fixes.
126 Vala 0.5.2
127 ==========
129  * Report uninitialized local variables.
130  * Report unused fields, methods, and local variables.
131  * Fix error handling in complex statements.
132  * Improve support for generic types.
133  * Support parameter arrays in bindings.
134  * Do not require libgee for foreach statements.
135  * Support enums in D-Bus clients and servers.
136  * Support structs in hash tables in D-Bus servers.
137  * Experimental static D-Bus client support.
138  * Add --dump-tree commandline option to write code tree to file.
139  * Many bug fixes.
141 Vala 0.5.1
142 ==========
144  * Support type checks for error domains and error codes.
145  * Experimental support for yield statements and coroutines.
146  * Support GValue and GHashTable in D-Bus clients.
147  * Various improvements to the .gir reader.
148  * Drop deprecated support for static classes.
149  * Modularize code generator.
150  * Many bug fixes.
152 Vala 0.4.0
153 ==========
155  * Support more flexible constructors.
156  * Partial support for reading and writing .gir files.
157  * Improve compiler performance.
158  * Copy arrays where necessary.
159  * Basic support for static properties.
160  * Partial support for struct holding object references.
161  * Add tracker indexer bindings (Roberto Majadas)
162  * Updates to the GLib, GTK+, and GStreamer bindings.
163  * Many bug fixes.
165 Vala 0.3.5
166 ==========
168  * Notify on property changes by default (Jared Moore)
169  * Add unique-1.0 bindings (Phil Housley)
170  * Updates to the GLib, GTK+, and GStreamer bindings.
171  * Many bug fixes.
173 Vala 0.3.4
174 ==========
176  * Various improvements to D-Bus client and service support.
177  * Basic support for detailed signals.
178  * Check types of printf arguments.
179  * Support `in' operator for Gee.Collection and Gee.Map (Jamie McCracken)
180  * Add libgsf-1 bindings (Michael Lawrence)
181  * Add loudmouth-1.0 bindings (Ali Sabil)
182  * Updates to the GLib, GTK+, and GStreamer bindings.
183  * Many bug fixes.
185 Vala 0.3.3
186 ==========
188  * Support overriding default method handlers of signals.
189  * Support dynamic access to properties and signals of GObjects.
190  * Experimental support for nullable value types.
191  * Improve support for classes not deriving from GLib.Object.
192  * Support """verbatim strings""".
193  * Add parser for Genie (Jamie McCracken)
194  * Experimental support for arrays of arrays.
195  * Documentation improvements (Phil Housley)
196  * Improvements to D-Bus support (Ali Sabil, Philip Van Hoof, Yu Feng)
197  * Add libepc-1.0 bindings (Ali Sabil)
198  * Add libtiff bindings (Christian Meyer)
199  * Updates to the GStreamer bindings (Ali Sabil and Jaap A. Haitsma)
200  * Many bug fixes and performance improvements.
202 Vala 0.3.2
203 ==========
205  * Add support for class constructors, class fields, and class methods.
206  * Various improvements to methods in D-Bus services.
207  * Add support for properties and signals in D-Bus services (Yu Feng)
208  * Add Time API to GLib bindings.
209  * Documentation improvements (Phil Housley)
210  * Updates to the GLib and GTK+ bindings.
211  * Many bug fixes.
213 Vala 0.3.1
214 ==========
216  * Enable non-null types by default.
217  * Add --disable-non-null commandline option.
218  * New handwritten parser.
219  * Support virtual methods in interfaces.
220  * Add `dynamic' type modifier for D-Bus client support.
221  * Add experimental support for writing D-Bus services.
222  * Don't require `new' operator for structs.
223  * Warn when using deprecated syntax.
224  * Add libsexy bindings (Evan Nemerson)
225  * Updates to the GLib and GTK+ bindings.
226  * Many bug fixes.
228 Vala 0.2.0
229 ==========
231  * Support nested namespaces.
232  * Support static constructors.
233  * Register enums with GType (Marc-André Lureau)
234  * Small syntax change for default values of properties.
235  * Add --verbose commandline option (Daniel Silverstone)
236  * Improve pointer support.
237  * Add GNOME Keyring bindings (Andrea Del Signore)
238  * Add SDL bindings (Levi Bard)
239  * Add libftdi bindings (Evan Nemerson)
240  * Updates to the GLib, GTK+, GStreamer, and SQLite bindings.
241  * Many bug fixes all over the place.
243 Vala 0.1.7
244 ==========
246  * Support private property accessors.
247  * Support default values for properties.
248  * Improve support for array length and delegate target parameters.
249  * Improve delegate and signal handler support.
250  * Introduce new syntax to declare errordomains.
251  * Improve exception support.
252  * Report errors for missing return statements.
253  * Report warnings for unreachable code.
254  * Improve support for generic types.
255  * Support pointer member access and pointer element access.
256  * Support pointer arithmetic.
257  * Add --quiet commandline option (Emmanuele Bassi)
258  * Add WebKit bindings.
259  * Add JSON-GLib bindings (Ali Sabil)
260  * Add goocanvas bindings (Roberto Majadas)
261  * Add hildon-fm-2 bindings (Levi Bard)
262  * Add taglib bindings (Andreas Brauchli)
263  * Add libusb bindings (Evan Nemerson)
264  * Add bzip2 bindings (Maciej Piechotka)
265  * Updates to the GLib, GTK+, GStreamer, and libsoup bindings.
266  * Fixes for Windows.
267  * Many bug fixes.
269 Vala 0.1.6
270 ==========
272  * Add support for instance delegates.
273  * Support conditional method compilation.
274  * Add support for nested generic types.
275  * Add size_t and ssize_t.
276  * Use non-null types by default with --enable-non-null option.
277  * Limited support for nullable types.
278  * Add basic support for method pre- and postconditions.
279  * Improve pointer support.
280  * Always enable memory management.
281  * Add libgnome-menu bindings (Roberto Majadas)
282  * Add liboobs-1 bindings (Roberto Majadas)
283  * Updates to the GLib, GTK+, GStreamer, SQLite, and libxml2 bindings.
284  * Small documentation improvements.
285  * Many bug fixes.
287 Vala 0.1.5
288 ==========
290  * Add Vala Project Generator.
291  * Support `in` operator for enums.
292  * Support typeof for generic type parameters.
293  * Replace gidlgen by vala-gen-introspect with a real C parser.
294  * Update all bindings to use vala-gen-introspect.
295  * Fix many gcc warnings.
296  * Fix build with Cygwin and MinGW (Yaakov Selkowitz).
297  * Many bug fixes.
299 Vala 0.1.4
300 ==========
302  * Use .vapi as file extension for bindings.
303  * Add Vala Reference Manual.
304  * Add support for object initializers.
305  * Emit #line directives in debug mode.
306  * Add --basedir option.
307  * Support creation methods in structs.
308  * Add support for [Notify] attribute for properties.
309  * Add experimental support for registering new fundamental classed types.
310  * Improve support for non-GObject classes.
311  * Improve error reporting.
312  * Add vapicheck to verify generated bindings (Mathias Hasselmann).
313  * Drop xml_pp dependency (Alberto Ruiz).
314  * Many bug fixes.
316 Vala 0.1.3
317 ==========
319  * Convert reference-type structs to classes for a more consistent type system.
320  * Support `as` operator (Mathias Hasselmann).
321  * Improve array support.
322  * Experimental D-Bus client support.
323  * Add GConf bindings.
324  * Add libgnome and libgnomeui bindings.
325  * Add Glade bindings.
326  * Add libnotify bindings (Nicolas Christener, Roland Hostettler).
327  * Add GnomeVFS bindings.
328  * Add GtkSourceView bindings.
329  * Add Panel Applet bindings.
330  * Add GNOME Desktop Library bindings.
331  * Add libsoup bindings.
332  * Add libwnck bindings.
333  * Add GtkMozEmbed bindings (Alberto Ruiz).
334  * Add Poppler bindings (Alberto Ruiz).
335  * Add Enchant bindings (Mathias Hasselmann).
336  * Add Hildon bindings (Marcelo Lira).
337  * Add SQLite bindings.
338  * Add curses bindings (Ed Schouten).
339  * Build system fixes (Nicolas Trangez).
340  * Add manual pages for gidlgen and vapigen (Kumar Appaiah).
341  * Many bug fixes all over the place.
343 Vala 0.1.2
344 ==========
346  * Use and support libgee collection library (internal copy for now).
347  * Performance improvements.
348  * Improve support for generic types.
349  * Many memory management fixes.
350  * Add support for inner classes.
351  * Add --cc and -X commandline options to control the C compiler.
352  * Use GSlice for reference-type structs.
353  * Add experimental GStreamer bindings.
355 Vala 0.1.1
356 ==========
358  * Support simple exception handling.
359  * Improve array and string support.
360  * Support multi-dimensional arrays.
361  * Add --thread commandline option.
362  * Improve bindings.
363  * Bug fixes.
365 Vala 0.1.0
366 ==========
368  * Add commandline options for running the C compiler and linker.
369  * Use # modifier for reference transfer in method parameters.
370  * Replace callback keyword by delegate.
371  * Improve and update GLib and GTK+ bindings.
372  * Add experimental GVFS binding.
373  * C89/MSVC portability fixes (Hans Breuer).
374  * Refactor code generator.
375  * Add experimental bindings generator.
376  * Many bug fixes.
378 Vala 0.0.9
379 ==========
381  * Add support for defining new generic classes.
382  * Improve array support.
383  * Memory management fixes.
384  * Improve abstract property support.
385  * Add basic support for flags types.
386  * Improve GLib binding.
387  * Add VTE binding.
388  * Many bug fixes.
390 Vala 0.0.8
391 ==========
393  * Add support for overridden properties.
394  * Support properties and signals in interfaces.
395  * Improve interface runtime suport.
396  * Verify that classes implement all abstract and interface methods.
397  * Basic compile-time support for generic types.
398  * Default to strong references for return values and local variables.
399  * Improve signal support.
400  * Add support for pointers.
401  * Improve support for numeric types.
402  * Support writing GTypeModule-based plug-ins.
403  * Improve manual memory management support.
404  * Improve GTK+ bindings.
405  * Many bug fixes.
407 Vala 0.0.7
408 ==========
410  * New object construction syntax.
411  * Interface implementations don't have to specify override anymore.
412  * Improve interface support.
414 Vala 0.0.6
415 ==========
417  * Improve interface support.
418  * Support do loops.
419  * Improve array support.
420  * Improve enum support.
421  * Add automated testing infrastructure.
422  * Fixes for prefix and postfix operators.
423  * Add more types to GLib bindings.
424  * Many bug fixes.
426 Vala 0.0.5
427 ==========
429  * Support base access.
430  * Support typeof expressions.
431  * Improve array support.
432  * Fix possible memory leak in foreach statements.
433  * Fix many warnings during C compilation.
434  * Improve GTK+ bindings.
436 Vala 0.0.4
437 ==========
439  * Support + operator in strings.
440  * Support unicode character literals.
441  * Add implicit conversions for numeric types.
442  * Improve interface support.
443  * Improve array support.
444  * Support arbitrary signal parameters.
445  * Add threading support.
446  * Support lock statements.
447  * Many improvements to the GTK+ bindings.
449 Vala 0.0.3
450 ==========
452  * Interface fixes.
453  * Support namespace constants.
454  * Support switch statements.
455  * Array creation support.
456  * Provide complete but experimental bindings for GTK+ 2.10 and Cairo 1.2.
457  * Add implicit array length parameter.
458  * Follow package dependencies.
459  * Support hexadecimal and octal integer literals and hexadecimal escape
460    sequences.
461  * Install libvala as shared library.
463 Vala 0.0.2
464 ==========
466  * Support named construction methods.
467  * Basic interface support.
468  * Improve error handling.
469  * Many bug fixes.
472 Vala 0.0.1
473 ==========
475  * Initial release.