update for 0.5.5 release
[vala-lang.git] / NEWS
blob01f609ad2f16977ab96731fae02407251fcdd0f5
1 Vala 0.5.5
2 ==========
4  * Improve syntax of owned property getters.
5  * Add --enable-deprecated and --enable-experimental commandline options.
6  * Remove --disable-non-null commandline option.
7  * Many bug fixes.
9 Vala 0.5.4
10 ==========
12  * Support array initializers as expressions.
13  * Support += to efficiently append elements to arrays.
14  * Calculate length for null-terminated arrays.
15  * Support initializers for multi-dimensional arrays.
16  * Add `owned' keyword to replace `#'.
17  * Various fixes in coroutine support.
18  * Support boxed structs as GObject properties.
19  * Many bug fixes.
21 Vala 0.5.3
22 ==========
24  * Rewrite D-Bus server support to directly use libdbus.
25  * Register structs as boxed types.
26  * Improve error reporting on invalid code.
27  * Support private class fields and class destructors.
28  * Add partial raptor and rasqal bindings.
29  * Drop vala-gen-project, moved to vtg.
30  * Many bug fixes.
32 Vala 0.5.2
33 ==========
35  * Report uninitialized local variables.
36  * Report unused fields, methods, and local variables.
37  * Fix error handling in complex statements.
38  * Improve support for generic types.
39  * Support parameter arrays in bindings.
40  * Do not require libgee for foreach statements.
41  * Support enums in D-Bus clients and servers.
42  * Support structs in hash tables in D-Bus servers.
43  * Experimental static D-Bus client support.
44  * Add --dump-tree commandline option to write code tree to file.
45  * Many bug fixes.
47 Vala 0.5.1
48 ==========
50  * Support type checks for error domains and error codes.
51  * Experimental support for yield statements and coroutines.
52  * Support GValue and GHashTable in D-Bus clients.
53  * Various improvements to the .gir reader.
54  * Drop deprecated support for static classes.
55  * Modularize code generator.
56  * Many bug fixes.
58 Vala 0.4.0
59 ==========
61  * Support more flexible constructors.
62  * Partial support for reading and writing .gir files.
63  * Improve compiler performance.
64  * Copy arrays where necessary.
65  * Basic support for static properties.
66  * Partial support for struct holding object references.
67  * Add tracker indexer bindings (Roberto Majadas)
68  * Updates to the GLib, GTK+, and GStreamer bindings.
69  * Many bug fixes.
71 Vala 0.3.5
72 ==========
74  * Notify on property changes by default (Jared Moore)
75  * Add unique-1.0 bindings (Phil Housley)
76  * Updates to the GLib, GTK+, and GStreamer bindings.
77  * Many bug fixes.
79 Vala 0.3.4
80 ==========
82  * Various improvements to D-Bus client and service support.
83  * Basic support for detailed signals.
84  * Check types of printf arguments.
85  * Support `in' operator for Gee.Collection and Gee.Map (Jamie McCracken)
86  * Add libgsf-1 bindings (Michael Lawrence)
87  * Add loudmouth-1.0 bindings (Ali Sabil)
88  * Updates to the GLib, GTK+, and GStreamer bindings.
89  * Many bug fixes.
91 Vala 0.3.3
92 ==========
94  * Support overriding default method handlers of signals.
95  * Support dynamic access to properties and signals of GObjects.
96  * Experimental support for nullable value types.
97  * Improve support for classes not deriving from GLib.Object.
98  * Support """verbatim strings""".
99  * Add parser for Genie (Jamie McCracken)
100  * Experimental support for arrays of arrays.
101  * Documentation improvements (Phil Housley)
102  * Improvements to D-Bus support (Ali Sabil, Philip Van Hoof, Yu Feng)
103  * Add libepc-1.0 bindings (Ali Sabil)
104  * Add libtiff bindings (Christian Meyer)
105  * Updates to the GStreamer bindings (Ali Sabil and Jaap A. Haitsma)
106  * Many bug fixes and performance improvements.
108 Vala 0.3.2
109 ==========
111  * Add support for class constructors, class fields, and class methods.
112  * Various improvements to methods in D-Bus services.
113  * Add support for properties and signals in D-Bus services (Yu Feng)
114  * Add Time API to GLib bindings.
115  * Documentation improvements (Phil Housley)
116  * Updates to the GLib and GTK+ bindings.
117  * Many bug fixes.
119 Vala 0.3.1
120 ==========
122  * Enable non-null types by default.
123  * Add --disable-non-null commandline option.
124  * New handwritten parser.
125  * Support virtual methods in interfaces.
126  * Add `dynamic' type modifier for D-Bus client support.
127  * Add experimental support for writing D-Bus services.
128  * Don't require `new' operator for structs.
129  * Warn when using deprecated syntax.
130  * Add libsexy bindings (Evan Nemerson)
131  * Updates to the GLib and GTK+ bindings.
132  * Many bug fixes.
134 Vala 0.2.0
135 ==========
137  * Support nested namespaces.
138  * Support static constructors.
139  * Register enums with GType (Marc-AndrĂ© Lureau)
140  * Small syntax change for default values of properties.
141  * Add --verbose commandline option (Daniel Silverstone)
142  * Improve pointer support.
143  * Add GNOME Keyring bindings (Andrea Del Signore)
144  * Add SDL bindings (Levi Bard)
145  * Add libftdi bindings (Evan Nemerson)
146  * Updates to the GLib, GTK+, GStreamer, and SQLite bindings.
147  * Many bug fixes all over the place.
149 Vala 0.1.7
150 ==========
152  * Support private property accessors.
153  * Support default values for properties.
154  * Improve support for array length and delegate target parameters.
155  * Improve delegate and signal handler support.
156  * Introduce new syntax to declare errordomains.
157  * Improve exception support.
158  * Report errors for missing return statements.
159  * Report warnings for unreachable code.
160  * Improve support for generic types.
161  * Support pointer member access and pointer element access.
162  * Support pointer arithmetic.
163  * Add --quiet commandline option (Emmanuele Bassi)
164  * Add WebKit bindings.
165  * Add JSON-GLib bindings (Ali Sabil)
166  * Add goocanvas bindings (Roberto Majadas)
167  * Add hildon-fm-2 bindings (Levi Bard)
168  * Add taglib bindings (Andreas Brauchli)
169  * Add libusb bindings (Evan Nemerson)
170  * Add bzip2 bindings (Maciej Piechotka)
171  * Updates to the GLib, GTK+, GStreamer, and libsoup bindings.
172  * Fixes for Windows.
173  * Many bug fixes.
175 Vala 0.1.6
176 ==========
178  * Add support for instance delegates.
179  * Support conditional method compilation.
180  * Add support for nested generic types.
181  * Add size_t and ssize_t.
182  * Use non-null types by default with --enable-non-null option.
183  * Limited support for nullable types.
184  * Add basic support for method pre- and postconditions.
185  * Improve pointer support.
186  * Always enable memory management.
187  * Add libgnome-menu bindings (Roberto Majadas)
188  * Add liboobs-1 bindings (Roberto Majadas)
189  * Updates to the GLib, GTK+, GStreamer, SQLite, and libxml2 bindings.
190  * Small documentation improvements.
191  * Many bug fixes.
193 Vala 0.1.5
194 ==========
196  * Add Vala Project Generator.
197  * Support `in` operator for enums.
198  * Support typeof for generic type parameters.
199  * Replace gidlgen by vala-gen-introspect with a real C parser.
200  * Update all bindings to use vala-gen-introspect.
201  * Fix many gcc warnings.
202  * Fix build with Cygwin and MinGW (Yaakov Selkowitz).
203  * Many bug fixes.
205 Vala 0.1.4
206 ==========
208  * Use .vapi as file extension for bindings.
209  * Add Vala Reference Manual.
210  * Add support for object initializers.
211  * Emit #line directives in debug mode.
212  * Add --basedir option.
213  * Support creation methods in structs.
214  * Add support for [Notify] attribute for properties.
215  * Add experimental support for registering new fundamental classed types.
216  * Improve support for non-GObject classes.
217  * Improve error reporting.
218  * Add vapicheck to verify generated bindings (Mathias Hasselmann).
219  * Drop xml_pp dependency (Alberto Ruiz).
220  * Many bug fixes.
222 Vala 0.1.3
223 ==========
225  * Convert reference-type structs to classes for a more consistent type system.
226  * Support `as` operator (Mathias Hasselmann).
227  * Improve array support.
228  * Experimental D-Bus client support.
229  * Add GConf bindings.
230  * Add libgnome and libgnomeui bindings.
231  * Add Glade bindings.
232  * Add libnotify bindings (Nicolas Christener, Roland Hostettler).
233  * Add GnomeVFS bindings.
234  * Add GtkSourceView bindings.
235  * Add Panel Applet bindings.
236  * Add GNOME Desktop Library bindings.
237  * Add libsoup bindings.
238  * Add libwnck bindings.
239  * Add GtkMozEmbed bindings (Alberto Ruiz).
240  * Add Poppler bindings (Alberto Ruiz).
241  * Add Enchant bindings (Mathias Hasselmann).
242  * Add Hildon bindings (Marcelo Lira).
243  * Add SQLite bindings.
244  * Add curses bindings (Ed Schouten).
245  * Build system fixes (Nicolas Trangez).
246  * Add manual pages for gidlgen and vapigen (Kumar Appaiah).
247  * Many bug fixes all over the place.
249 Vala 0.1.2
250 ==========
252  * Use and support libgee collection library (internal copy for now).
253  * Performance improvements.
254  * Improve support for generic types.
255  * Many memory management fixes.
256  * Add support for inner classes.
257  * Add --cc and -X commandline options to control the C compiler.
258  * Use GSlice for reference-type structs.
259  * Add experimental GStreamer bindings.
261 Vala 0.1.1
262 ==========
264  * Support simple exception handling.
265  * Improve array and string support.
266  * Support multi-dimensional arrays.
267  * Add --thread commandline option.
268  * Improve bindings.
269  * Bug fixes.
271 Vala 0.1.0
272 ==========
274  * Add commandline options for running the C compiler and linker.
275  * Use # modifier for reference transfer in method parameters.
276  * Replace callback keyword by delegate.
277  * Improve and update GLib and GTK+ bindings.
278  * Add experimental GVFS binding.
279  * C89/MSVC portability fixes (Hans Breuer).
280  * Refactor code generator.
281  * Add experimental bindings generator.
282  * Many bug fixes.
284 Vala 0.0.9
285 ==========
287  * Add support for defining new generic classes.
288  * Improve array support.
289  * Memory management fixes.
290  * Improve abstract property support.
291  * Add basic support for flags types.
292  * Improve GLib binding.
293  * Add VTE binding.
294  * Many bug fixes.
296 Vala 0.0.8
297 ==========
299  * Add support for overridden properties.
300  * Support properties and signals in interfaces.
301  * Improve interface runtime suport.
302  * Verify that classes implement all abstract and interface methods.
303  * Basic compile-time support for generic types.
304  * Default to strong references for return values and local variables.
305  * Improve signal support.
306  * Add support for pointers.
307  * Improve support for numeric types.
308  * Support writing GTypeModule-based plug-ins.
309  * Improve manual memory management support.
310  * Improve GTK+ bindings.
311  * Many bug fixes.
313 Vala 0.0.7
314 ==========
316  * New object construction syntax.
317  * Interface implementations don't have to specify override anymore.
318  * Improve interface support.
320 Vala 0.0.6
321 ==========
323  * Improve interface support.
324  * Support do loops.
325  * Improve array support.
326  * Improve enum support.
327  * Add automated testing infrastructure.
328  * Fixes for prefix and postfix operators.
329  * Add more types to GLib bindings.
330  * Many bug fixes.
332 Vala 0.0.5
333 ==========
335  * Support base access.
336  * Support typeof expressions.
337  * Improve array support.
338  * Fix possible memory leak in foreach statements.
339  * Fix many warnings during C compilation.
340  * Improve GTK+ bindings.
342 Vala 0.0.4
343 ==========
345  * Support + operator in strings.
346  * Support unicode character literals.
347  * Add implicit conversions for numeric types.
348  * Improve interface support.
349  * Improve array support.
350  * Support arbitrary signal parameters.
351  * Add threading support.
352  * Support lock statements.
353  * Many improvements to the GTK+ bindings.
355 Vala 0.0.3
356 ==========
358  * Interface fixes.
359  * Support namespace constants.
360  * Support switch statements.
361  * Array creation support.
362  * Provide complete but experimental bindings for GTK+ 2.10 and Cairo 1.2.
363  * Add implicit array length parameter.
364  * Follow package dependencies.
365  * Support hexadecimal and octal integer literals and hexadecimal escape
366    sequences.
367  * Install libvala as shared library.
369 Vala 0.0.2
370 ==========
372  * Support named construction methods.
373  * Basic interface support.
374  * Improve error handling.
375  * Many bug fixes.
378 Vala 0.0.1
379 ==========
381  * Initial release.