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