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