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