Branch and push for 2.0
[profile/ivi/pygobject2.git] / ChangeLog.pre-2.18
1 === ChangeLog discontinued ===
2
3 2009-05-04  Siavash Safi  <siavash@siavashs.org>
4
5         Bug 579275 – Patch which removes dll api in headers and adds
6         a namespace option
7
8         * codegen/h2def.py: Add -n --namespace option and the code to remove
9         dll API in headers, Added documentation
10
11 2009-04-17  Paul Pogonyshev  <pogonyshev@gmx.net>
12
13         Bug 568499 – CellRendererPixbuf stock-size property has wrong type
14
15         * gobject/pygtype.c (pyg_enum_get_value): Also accept long
16         integers.
17
18 2009-04-15  Götz Waschk  <waschk@mandriva.org>
19
20         Bug 550231 – missing dep on libffi in pygobject-2.0.pc
21
22         * configure.ac: Define `LIBFFI_PC' subst.
23
24         * pygobject-2.0.pc.in:
25         * pygobject-2.0-uninstalled.pc.in: Use it.
26
27 2009-04-15  Paul Pogonyshev  <pogonyshev@gmx.net>
28
29         Bug 555613 – gio.VolumeMonitor segfaults
30
31         * gio/gvolumemonitor.override (_wrap_g_volume_monitor_tp_new): New
32         function, return the singleton object.
33
34 2009-04-14  James Westby  <jw+debian@jameswestby.net>
35
36         Bug 573753 – DeprecationWarning under python 2.6
37
38         * codegen/definitions.py (ReturnType.__init__): Don't pass
39         'type_name' argument to super __init__.
40
41 2009-04-14  Krzesimir Nowak  <krnowak@svn.gnome.org>
42
43         Bug 576566 – several scripts from codegen directory are not
44         distributed
45
46         * codegen/Makefile.am (codegen_PYTHON): List several missing
47         scripts.
48
49 2009-04-14  Gian Mario Tagliaretti  <gianmt@gnome.org>
50
51         * gio/gfile.override: (_wrap_g_file_copy_async) change argument order
52         to keep it consistent with the other methods.
53
54 2009-04-13  Paul Pogonyshev  <pogonyshev@gmx.net>
55
56         Bug 578870 – memory leak in gio.File.copy_async
57
58         * gio/gio.override (PyGIONotify): Add 'slaves' field.
59         (pygio_notify_new_slave): New function.
60         (pygio_notify_reference_callback): Recurse for slaves, if any.
61         (pygio_notify_free): Likewise.
62
63         * gio/gfile.override (file_progress_callback_marshal): Use new
64         chaining functionality to avoid leaking the second PyGIONotify
65         structure.  Rename 'callback' as 'progress_callback' for clarity.
66
67 2009-04-12  Gian Mario Tagliaretti  <gianmt@gnome.org>
68
69         * gio/gio.defs: (g_file_monitor) should accept None
70         for cancellable and set the default flag to G_FILE_MONITOR_NONE.
71
72 2009-04-09  Jonathan Matthew  <jonathan@d14n.org>
73
74         Bug 575781 – pyg_notify_free needs to ensure it has GIL before calling
75         Py_XDECREF
76
77         * gio/gio.override:  Ensure we're holding the GIL before potentially
78         destroying the callback and data.
79
80 2009-04-05  Gian Mario Tagliaretti  <gianmt@gnome.org>
81
82         * gio/gfile.override:
83         (_wrap_g_file_set_display_name_async) Wrap new GFile method.
84         
85         * tests/test_gio.py: Test the above methods.
86
87 2009-04-05  Tristan Hill  <stan@saticed.me.uk>
88
89         reviewed by: Gustavo J. A. M. Carneiro.
90
91         * glib/pygoptioncontext.c (pyg_option_get_context): Add a
92         semi-private method to return the option context C object from an
93         option context wrapper.  Used in gnome-python for fixing Bug
94         #507174.
95
96 2009-04-05  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
97
98         * gobject/pygtype.c (pyg_value_from_pyobject): Bug 577999 –
99         converting a negative long Python value to a GUINT64 GValue
100         doesn't error out as it should.
101
102 2009-04-04  Gian Mario Tagliaretti  <gianmt@gnome.org>
103
104         * gio/gfile.override:
105         (_wrap_g_file_set_attributes_async)
106         (_wrap_g_file_set_attributes_finish) Wrap new GFile methods.
107         
108         * tests/test_gio.py: Test the above methods.
109
110 2009-03-31  Gian Mario Tagliaretti  <gianmt@gnome.org>
111
112         * gio/gfile.override:
113         (_wrap_g_file_query_filesystem_info_async) Fix a typo.
114
115 2009-03-31  Gian Mario Tagliaretti  <gianmt@gnome.org>
116
117         * gio/gfile.override:
118         (_wrap_g_file_query_filesystem_info_async) Wrap new GFile method.
119
120 2009-03-31  Gian Mario Tagliaretti  <gianmt@gnome.org>
121
122         * gio/gio.defs: Add missing g_file_query_filesystem_info_async and
123         g_file_query_filesystem_info_finish
124
125 2009-03-30  Gian Mario Tagliaretti  <gianmt@gnome.org>
126
127         * gio/gfile.override: (_wrap_g_file_mount_mountable)
128         Swap kwargs names to reflect the code.
129
130 2009-03-30  Gian Mario Tagliaretti  <gianmt@gnome.org>
131
132         * gio/gfile.override: (_wrap_g_file_mount_enclosing_volume)
133         Swap kwargs names to reflect the code.
134
135 2009-03-30  Gian Mario Tagliaretti  <gianmt@gnome.org>
136
137         * gio/gfile.override:
138         (_wrap_g_file_find_enclosing_mount_async) Wrap new GFile method.
139
140 2009-03-30  Gian Mario Tagliaretti  <gianmt@gnome.org>
141
142         * gio/gfile.override:
143         (_wrap_g_file_eject_mountable) Wrap new GFile method.
144
145 2009-03-30  Gian Mario Tagliaretti  <gianmt@gnome.org>
146
147         * gio/gfile.override: (_wrap_g_file_copy) revert previous commit.
148
149 2009-03-30  Gian Mario Tagliaretti  <gianmt@gnome.org>
150
151         * gio/gfile.override: (_wrap_g_file_copy) callback cannot be optional.
152
153 2009-03-29  Gian Mario Tagliaretti  <gianmt@gnome.org>
154
155         * gio/gvolume.override: (_wrap_g_volume_mount) should accept None
156         for mount_operation.
157
158 2009-03-29  Gian Mario Tagliaretti  <gianmt@gnome.org>
159
160         * gio/gvolume.override: Swap kwargs names to reflect the code.
161
162 2009-03-29  Tobias Mueller  <tobiasmue@gnome.org>
163
164         * ltihooks.py:
165         * pygtk.py:
166         * COPYING:
167         * gobject/pygparamspec.h:
168         * gobject/pygpointer.c:
169         * gobject/ffi-marshaller.h:
170         * gobject/pygtype.c:
171         * gobject/__init__.py:
172         * gobject/pygpointer.h:
173         * gobject/pygtype.h:
174         * gobject/pygflags.c:
175         * gobject/pyginterface.c:
176         * gobject/pygflags.h:
177         * gobject/pygboxed.c:
178         * gobject/gobjectmodule.c:
179         * gobject/pygenum.c:
180         * gobject/pyginterface.h:
181         * gobject/pygboxed.h:
182         * gobject/pygobject.c:
183         * gobject/constants.py.in:
184         * gobject/pygenum.h:
185         * gobject/propertyhelper.py:
186         * gobject/pygparamspec.c:
187         * gobject/ffi-marshaller.c:
188         * glib/pygmainloop.c:
189         * glib/pygoptioncontext.h:
190         * glib/pygmainloop.h:
191         * glib/pyglib-private.h:
192         * glib/__init__.py:
193         * glib/pygoptiongroup.c:
194         * glib/pygspawn.c:
195         * glib/pygmaincontext.c:
196         * glib/pygoptiongroup.h:
197         * glib/pygspawn.h:
198         * glib/pygmaincontext.h:
199         * glib/option.py:
200         * glib/pygsource.c:
201         * glib/glibmodule.c:
202         * glib/pygiochannel.h:
203         * glib/pygsource.h:
204         * glib/pyglib.c:
205         * glib/pyglib.h:
206         * glib/pyglib-python-compat.h:
207         * glib/pygoptioncontext.c:
208         * gio/gfileinfo.override:
209         * gio/gappinfo.override:
210         * gio/__init__.py:
211         * gio/gfileattribute.override:
212         * gio/gvolume.override:
213         * gio/gio.override:
214         * gio/ginputstream.override:
215         * gio/goutputstream.override:
216         * gio/unix.override:
217         * gio/gfile.override:
218         * gio/gvolumemonitor.override:
219         * gio/gapplaunchcontext.override:
220         * gio/giomodule.c:
221         * gio/gfileenumerator.override:
222         * gio/pygio-utils.c:
223         * gio/unixmodule.c:
224         * gio/pygio-utils.h:
225         * gio/gicon.override:
226         Update the address of the FSF, by replacing old bits of the address 
227         with new ones.
228         Fixes bug 577134
229
230 2009-03-29  Gian Mario Tagliaretti  <gianmt@gnome.org>
231
232         * gio/gio.defs: Add g_volume_should_automount
233
234 2009-03-28  Gian Mario Tagliaretti  <gianmt@gnome.org>
235
236         * gio/pygio-utils.[hc]: (strv_to_pylist) (pylist_to_strv) add a couple
237         of convinence functions to convert from/to a python list and an array
238         of strings.
239
240         * gio/Makefile.am
241         * gio/gdrive.override:
242         * gio/gio.override: Strip GDrive overrides and
243         wrap g_drive_enumerate_identifiers
244         
245         * tests/test_gio.py:
246         * gio/gvolume.override: wrap g_volume_enumerate_identifiers
247
248         * gio/gio.defs: add missing g_drive_get_identifier and
249         g_drive_enumerate_identifiers
250
251 2009-03-22  Mark Lee  <marklee@svn.gnome.org>
252
253         Bug 559001 – Allow setting pytype wrapper class
254
255         initial patch by: John Ehresman  <jpe@wingware.com>
256
257         * gobject/pygtype.c (_wrap_g_type_wrapper__set_pytype): New function.
258
259         * tests/test_gtype.py (GTypeTest.assertPyType),
260         (GTypeTest.setInvalidPyType), (GTypeTest.testPyType),
261         (GTypeTest.testInvalidPyType): Two new testcases to test the above,
262         with accompanying helper methods.
263
264 2009-03-22  Gian Mario Tagliaretti  <gianmt@gnome.org>
265
266         * gio/gio.defs: Add g_file_enumerator_get_container, new in 2.18
267
268 2009-03-22  Gian Mario Tagliaretti  <gianmt@gnome.org>
269
270         * gio/gfileenumerator.override (_wrap_g_file_enumerator_close_async)
271         wrap new method.
272
273         * tests/test_gio.py (TestGFileEnumerator.testCloseFilesAsync):
274         Test the above.
275
276 2009-03-09  Gian Mario Tagliaretti  <gianmt@gnome.org>
277
278         * docs/reference/Changelog: Create a dedicated Changelog for the docs
279         and move the latest entries in there.
280
281 2009-02-20  James Henstridge  <james@jamesh.id.au>
282
283         * ltihooks.py: pull in changes from pygtk (updating license header
284         from GPL to LGPL).
285
286 2009-02-18  Andre Klapper  <a9016009@gmx.de>
287
288         * gobject/pygobject.h:
289         Change comment to avoid false positives when grep'ing for 
290         deprecated gtk functions
291
292 2009-02-17  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>
293
294         * gio/gfile.override, gio/gio.defs, gio/gio.override: Bug 556250
295         again.  I screwed up and gave misinformation about how to fix it.
296         It must be pyg_begin/end_allow_threads, pyg_block/unblock_threads
297         is only to be used for async callbacks.
298
299 2009-02-10  Gian Mario Tagliaretti  <gianmt@gnome.org>
300
301         Bug 556250 – non-async functions don't release python locks before
302         calling blocking C functions
303
304         * gio/gio.override:
305         * gio/gfile.override:
306         * gio/gio.defs: release the thread lock.
307
308 2009-02-10  Gian Mario Tagliaretti  <gianmt@gnome.org>
309
310         * gio/gio.defs:
311         * gio/gio-types.defs:
312         * gio/unix.defs: Add 2.18 gio API.
313
314 2009-02-08  Gian Mario Tagliaretti  <gianmt@gnome.org>
315
316         Bug 568427 – "gio.Error: Too many open files" without too many
317         open files
318         
319         * gobject/pygtype.c (_wrap_g_type_wrapper__get_name):
320         * gobject/gobjectmodule.c (get_type_name_for_class):
321         * gobject/pygobject.c (build_parameter_list), (PyGProps_length):
322         * gio/gfileinfo.override (_wrap_g_file_info_list_attributes):
323         * gio/gio.override (_wrap_g_content_type_guess):
324         * gio/gfile.override (_wrap__file_init), (_wrap_g_file_load_contents)
325         (_wrap_g_file_load_contents_finish): Remove some memory leaks.
326         
327         * gio/gio.defs: add (caller-owns-return #t) all over the place to
328         prevent memory leaks.
329         
330         patch contributed by Paul Pogonyshev, Paolo Borelli and
331         Gian Mario Tagliaretti.
332
333 2009-02-06  Murray Cumming  <murrayc@murrayc.com>
334
335         * codegen/h2def.py DefsWriter::write_enum_defs(): Prevent an exception 
336         when the prefix is empty.
337
338 2009-01-29  Paul Pogonyshev  <pogonyshev@gmx.net>
339
340         Bug 569350 – Inconsistent use of tabs and spaces in pygtk.py
341
342         * pygtk.py: Replace all tabs with spaces.
343
344 2009-01-29  Paul Pogonyshev  <pogonyshev@gmx.net>
345
346         Bug 567792 – gio.InputStream.read_async can cause memory
347         corruption
348
349         * gio/gio.override (py_decref_callback): Remove (unused now).
350         (pygio_notify_allocate_buffer, pygio_notify_attach_to_result)
351         (pygio_notify_get_attached): New functions.
352         (async_result_callback_marshal): Attach to the result object if
353         asked and then don't free self.  Fix reference leak (spotted by
354         Gustavo).
355
356         * gio/ginputstream.override (async_result_callback_marshal_read):
357         Remove.  Use new attachment functionality in
358         async_result_callback_marshal() instead.
359         (_wrap_g_input_stream_read_async): Use the new functions (also
360         those mentioned in the cleanup log below).
361         (_wrap_g_input_stream_read_finish): Use the new functions.
362
363 2009-01-27  Daniel Elstner  <danielk@openismus.com>
364
365         * codegen/docextract_to_xml.py (escape_text): Do not escape the
366         ampersand "&" in entity references (bug #568485).  Replace some
367         unusual entity references in the output with their literal values.
368
369 2009-01-14  Paul Pogonyshev  <pogonyshev@gmx.net>
370
371         Bug 566571 – gtk.Buildable interface method override is not
372         recognized
373
374         * gobject/gobjectmodule.c (pyg_type_add_interfaces): New function,
375         break out code repetition out of pyg_type_register().
376
377         * tests/test_subtype.py
378         (TestSubType.test_gtk_buildable_virtual_method): New test
379         case (inactive).
380
381 2009-01-14  Paul Pogonyshev  <pogonyshev@gmx.net>
382
383         Bug 566706 – cleanup GIO overrides
384
385         * gio/gio.override (pygio_notify_new)
386         (pygio_notify_using_optional_callback)
387         (pygio_notify_callback_is_valid_full)
388         (pygio_notify_callback_is_valid)
389         (pygio_notify_reference_callback): New functions.
390         (pygio_notify_free): Rename from pygio_free_notify() and extend.
391         (async_result_callback_marshal): Warn if new `referenced' field is
392         not set (programming error).
393         (_wrap_g_drive_eject, _wrap_g_drive_poll_for_media)
394         (_wrap_g_mount_unmount, _wrap_g_mount_eject)
395         (_wrap_g_mount_remount): Lots of cleanup: use new functions
396         instead of repeating code, unify and fix error handling.
397
398         * gio/gfile.override (_wrap_g_file_read_async)
399         (_wrap_g_file_load_contents_async)
400         (_wrap_g_file_enumerate_children_async)
401         (_wrap_g_file_mount_mountable, _wrap_g_file_unmount_mountable)
402         (_wrap_g_file_mount_enclosing_volume, _wrap_g_file_copy)
403         (_wrap_g_file_copy_async, _wrap_g_file_move)
404         (_wrap_g_file_append_to_async, _wrap_g_file_create_async)
405         (_wrap_g_file_replace_async, _wrap_g_file_query_info_async)
406         (_wrap_g_file_replace_contents_async): Similar cleanup.
407
408         * gio/gfileenumerator.override
409         (_wrap_g_file_enumerator_next_files_async): Similar cleanup.
410
411         * gio/gicon.override (_wrap_g_loadable_icon_load_async): Similar
412         cleanup.
413
414         * gio/ginputstream.override (_wrap_g_input_stream_close_async):
415         Similar cleanup.
416
417         * gio/goutputstream.override (_wrap_g_output_stream_write_async)
418         (_wrap_g_output_stream_close_async): Similar cleanup.
419
420         * gio/gvolume.override (_wrap_g_volume_mount)
421         (_wrap_g_volume_eject): Similar cleanup.
422
423         * tests/test_gio.py (TestFile.test_copy_async): Fix the test.
424
425 2009-01-09  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
426
427         * gobject/gobjectmodule.c (pyg_type_register): Add a comment
428         explaining why the two for loops for registering interfaces.
429
430 2009-01-07  Paul Pogonyshev  <pogonyshev@gmx.net>
431
432         Bug 566744 – _wrap_g_input_stream_read_async() argument parsing
433         has incorrect keyword args
434
435         * gio/ginputstream.override (_wrap_g_input_stream_read_async): Fix
436         keyword list to be in sync with positional arguments.
437
438 2009-01-06  Gian Mario Tagliaretti  <gianmt@gnome.org>
439
440         Bug 566737 – Bad -I ordering can break build
441
442         * Makefile.am:
443         * gobject/Makefile.am:
444         * gio/Makefile.am:
445         * tests/Makefile.am:
446         Commit a patch from [dmacks at netspace dot org]
447
448 2009-01-04  Mads Chr. Olesen  <gnome-bugzilla@shiyee.dk>
449
450         * gio/gio.defs (gio.File.copy_async, gio.File.copy_finish): Define
451         methods.
452
453         * gio/gfile.override (_wrap_g_file_copy_async): New function.
454
455         * tests/test_gio.py (TestFile.test_copy_async): Test the methods.
456
457 2009-01-04  Przemysław Grzegorczyk  <pgrzegorczyk@gmail.com>
458
459         Bug 563714 – GNOME Goal: Clean up GLib and GTK+ includes
460
461         * gobject/generate-constants.c:
462         * glib/pygspawn.c: Only include toplevel <glib.h>.
463
464 2009-01-04  Paul Pogonyshev  <pogonyshev@gmx.net>
465
466         Bug 564018 – pygobject libtool-2.2 patch
467
468         * configure.ac: Apply the patch provided by Cygwin Ports
469         maintainer.
470
471 2009-01-04  Paul Pogonyshev  <pogonyshev@gmx.net>
472
473         * configure.ac: Branch, bump version to 2.17.0.
474
475 === 2.16.0 ===
476 2008-12-24  Paul Pogonyshev  <pogonyshev@gmx.net>
477
478         Bug 547119 – gobject.timeout_add_seconds() not found in docs
479
480         * docs/reference/pyglib-functions.xml (glib.timeout_add_seconds):
481         Describe.
482
483 2008-12-21  Paul Pogonyshev  <pogonyshev@gmx.net>
484
485         Bug 564102 – _wrap_g_output_stream_write_async not adding a
486         reference to the buffer passed
487
488         * gio/gio.override (pygio_notify_copy_buffer): New function.
489         (pygio_free_notify): Free new `buffer' field if it is set.
490
491         * gio/goutputstream.override (_wrap_g_output_stream_write_async):
492         Copy the buffer with new pygio_notify_copy_buffer() and use the
493         copy for g_output_stream_write_async() call.
494
495         * gio/gfile.override (_wrap_g_file_replace_contents_async): Same
496         as for _wrap_g_output_stream_write_async().
497
498 2008-12-03  Paul Pogonyshev  <pogonyshev@gmx.net>
499
500         * glib/pyglib.c (pyglib_error_check): Test if `domain' is not-null
501         before using it (avoids segfaults, see bug #561826).
502
503 2008-10-31  John Finlay  <finlay@moeraki.com>
504
505         * codegen/__init__.py (__all__): Add defsgen to __all__ list.
506
507         * codegen/h2def.py (find_enum_defs): Strip out # directives from
508         enum defintions.
509         (clean_func): Change ' * G_CONST_RETURN * ' to '** '
510
511         * codegen/Makefile.am (codegen_PYTHON): Add defsgen.py
512
513         * codegen/defsgen.py (typecode): Use the passed in prefix as a
514         hint when creating a typecode.
515         (split_prefix,write_enum_defs,_write_obj_helper): Add function to
516         use passed in prefix as a hint when splitting an object name into
517         module and name.
518
519         * codegen/h2def.py (DefsWriter.write_enum_defs): Make sure the
520         prefix ends with a _ i.e. really handle the GDK_FONT_FONT,
521         GDK_FONT_FONTSET case.
522
523 2008-09-12  Gian Mario Tagliaretti  <gianmt@gnome.org>
524
525         * gio/goutputstream.override
526         (g_output_stream_write_all): use gsize instead of gssize.
527
528 2008-09-10  Paul Pogonyshev  <pogonyshev@gmx.net>
529
530         Bug 530935 – pygobject_set_properties doesnt release the GIL
531
532         * gobject/pygobject.c (pygobject_set_properties): Reuse
533         set_property_from_pspec() which release GIL for us.  Also make
534         sure that g_object_thaw_notify() is called even after error.
535
536 2008-09-09  Paul Pogonyshev  <pogonyshev@gmx.net>
537
538         Bug 549517 – add __repr__ to gio.Drive, gio.Mount and gio.Volume
539
540         * gio/gio.override (_wrap_g_drive_tp_repr, _wrap_g_mount_tp_repr):
541         New functions.
542
543         * gio/gvolume.override (_wrap_g_volume_tp_repr): New function.
544
545 2008-09-09  Loïc Minier  <lool@dooz.org>
546
547         Bug 551227 – Missing AC_CONFIG_MACRO_DIR([m4])
548
549         * configure.ac: Add AC_CONFIG_MACRO_DIR.
550
551 2008-09-08  Paul Pogonyshev  <pogonyshev@gmx.net>
552
553         Bug 551056 – make codegen not import when corresponding argument
554         types are not registered
555
556         * codegen/override.py (import_pat): Add support for optional 'for'
557         clause.
558         (Overrides.__parse_override): Handle it.
559
560         * codegen/codegen.py (SourceWriter.write_imports)
561         (SourceWriter.write_object_imports): Adapt for changes in
562         get_imports() return value.
563         (is_registered_object): New function.
564
565 2008-09-07  Frederic Peters  <fpeters@0d.be>
566
567         * gio/gfile.override (_wrap_g_file_load_contents)
568         (_wrap_g_file_load_contents_finish): Fix typos breaking
569         compilation (bug #551212).
570
571 2008-09-07  Jonathan Matthew  <jonathan@d14n.org>
572
573         Bug 551059 – GFile load_contents methods chop data at first \0
574
575         * gio/gfile.override:
576         Use 's#' (length specified) rather than 's' when constructing
577         result values in load_contents and load_contents_finish.
578
579 2008-09-03  Johan Dahlin  <johan@gnome.org>
580
581         * configure.ac:
582         Post release version bump
583
584 === 2.15.4 ===
585 2008-09-03  Johan Dahlin  <johan@gnome.org>
586
587         * NEWS: Update
588
589 2008-09-03  Loïc Minier  <lool@dooz.org>
590
591         * gobject/pygpointer.c: (pyg_register_pointer):
592         Fix typo (s/&type/type) introduced in r886 causing weird crashes on
593         x86-64; bug #550463.
594
595 2008-09-01  Gian Mario Tagliaretti  <gianmt@gnome.org>
596
597         * codegen/argtypes.py: add G_TYPE_CLOSURE boxed type in codegen.
598
599 2008-08-31  Johan Dahlin  <johan@gnome.org>
600
601         * configure.ac:
602         Post release version bump
603
604 === 2.15.3 ===
605 2008-08-31  Johan Dahlin  <johan@gnome.org>
606
607         * NEWS: Update
608
609 2008-08-30  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>
610
611         * glib/pyglib.h: * gobject/pygobject.c: Fix memory problems
612         reported by valgrind due to invalid tp_basicsize in
613         PyGPropsDescr_Type.  Closes #549945.
614
615 2008-08-28  Paul Pogonyshev  <pogonyshev@gmx.net>
616
617         Bug 549191 – Constructor of gtk.TreeView raises TypeError when
618         model is None
619
620         * gobject/pygtype.c (pyg_value_from_pyobject): Handle None in
621         G_TYPE_INTERFACE branch.
622
623 2008-08-28  Paul Pogonyshev  <pogonyshev@gmx.net>
624
625         Bug 549351 – an unitialized variable in PyGLib
626
627         * glib/pygmainloop.c (pyg_main_loop_init): Initialize
628         `is_running'.
629
630 2008-08-28  Paul Pogonyshev  <pogonyshev@gmx.net>
631
632         Bug 547633 – cannot create new threads when pygtk is used
633
634         * glib/pyglib.c (_pyglib_notify_on_enabling_threads): New
635         function.
636         (pyglib_enable_threads): Invoke all callbacks added with new
637         _pyglib_notify_on_enabling_threads().
638
639         * gobject/gobjectmodule.c (pyg_note_threads_enabled): New
640         function (callback for new _pyglib_notify_on_enabling_threads()).
641         (PYGLIB_MODULE_START): Initialize
642         'pygobject_api_functions.threads_enabled' and also watch for
643         thread being enabled later on.
644
645 2008-08-28  Paul Pogonyshev  <pogonyshev@gmx.net>
646
647         Bug 547088 – wrap g_content_types_get_registered()
648
649         * gio/gio.override (_wrap_g_drive_get_volumes): Fix refleak.
650         (_wrap_g_content_types_get_registered): New function.
651
652         * gio/gfileenumerator.override (_wrap_g_file_enumerator_next_files_finish):
653         Fix refleak.
654
655         * gio/gvolumemonitor.override (_wrap_g_volume_monitor_get_connected_drives):
656         Fix refleak.
657         (_wrap_g_volume_monitor_get_volumes): Likewise.
658         (_wrap_g_volume_monitor_get_mounts): Likewise.
659
660 2008-08-28  Paul Pogonyshev  <pogonyshev@gmx.net>
661
662         Bug 547494 – gio.InputStream.read() looks broken
663
664         * gio/gio.defs (gio.InputStream.read_part): Rename from read(),
665         document.
666         (gio.InputStream.read): Rename from read_all(), document.
667         (gio.OutputStream.write_part): Rename from write(), document.
668         (gio.OutputStream.write): Rename from write_all(), document.
669
670         * gio/ginputstream.override (_wrap_g_input_stream_read): Fix
671         several bugs.
672         (_wrap_g_input_stream_read_all): New function.
673
674         * gio/goutputstream.override (_wrap_g_output_stream_write_all):
675         New function.
676
677         * tests/test_gio.py (TestInputStream.testRead): Add more tests.
678         (TestInputStream.test_read_part): New test.
679         (TestInputStream._read_in_loop): New helper method.
680         (TestOutputStream.test_write_part): New test.
681
682 2008-08-16  Paul Pogonyshev  <pogonyshev@gmx.net>
683
684         * gio/gfile.override (_wrap_g_file_enumerate_children_async): Fix
685         keywords getting out of sync with actual argument order.
686
687 2008-08-13  Paul Pogonyshev  <pogonyshev@gmx.net>
688
689         Bug 547495 – wrap four important asynchronous methods in gio.Drive
690         and gio.Mount
691
692         * gio/gio.defs (gio.Drive.eject, gio.Drive.poll_for_media)
693         (gio.Mount.remount): Document.
694
695         * gio/gio.override (_wrap_g_drive_eject)
696         (_wrap_g_drive_poll_for_media, _wrap_g_mount_eject)
697         (_wrap_g_mount_remount): New functions.
698
699 2008-08-12  Paul Pogonyshev  <pogonyshev@gmx.net>
700
701         Bug 547484 – wrap gio.DataInputStream.read_line and ...read_until
702
703         * tests/test_gio.py (TestDataInputStream): New test case.
704
705         * gio/gio.defs (gio.DataInputStream.read_line)
706         (gio.DataInputStream.read_until): Document.
707
708         * gio/ginputstream.override (_wrap_g_data_input_stream_read_line)
709         (_wrap_g_data_input_stream_read_until): New functions.
710
711 2008-08-12  Paul Pogonyshev  <pogonyshev@gmx.net>
712
713         Bug 547354 – wrap a few memory stream methods
714
715         * gio/ginputstream.override (_wrap_g_memory_input_stream_add_data):
716         New function.
717
718         * gio/gio.defs (gio.MemoryOutputStream.get_contents): Rename from
719         get_data() to avoid name clash.
720
721         * gio/goutputstream.override (_wrap_g_memory_output_stream_new)
722         (_wrap_g_memory_output_stream_get_data): New functions.
723
724         * tests/test_gio.py (TestMemoryInputStream)
725         (TestMemoryOutputStream): New test cases.
726
727 2008-08-12  Paul Pogonyshev  <pogonyshev@gmx.net>
728
729         * gio/gio.override: Ignore `g_io_module*' and `g_io_scheduler_*'.
730
731 2008-08-11  Paul Pogonyshev  <pogonyshev@gmx.net>
732
733         Bug 540376 – No TypeError raised when type is None
734
735         * gobject/gobjectmodule.c (pyg_signal_new): Add check on second
736         argument type.
737
738         * tests/test_signal.py (TestSignalCreation): New test case.
739
740 2008-08-11  Paul Pogonyshev  <pogonyshev@gmx.net>
741
742         Bug 547104 – improve type wrapper creation
743
744         * gio/gappinfo.override (_wrap_g_app_info_tp_richcompare)
745         (_wrap_g_app_info_tp_repr): New functions.
746
747         * tests/test_gio.py (TestAppInfo.test_eq): New test.
748
749 2008-08-11  Paul Pogonyshev  <pogonyshev@gmx.net>
750
751         Bug 547104 – improve type wrapper creation
752
753         * gobject/pygobject.c (pygobject_register_class): Use new
754         pygobject_inherit_slots() to propagate custom slots in normal
755         types too.
756         (pygobject_inherit_slots): New function, break out of
757         pygobject_new_with_interfaces() and rewrite a bit.
758         (pygobject_find_slot_for): Add new argument that can forbid
759         overriding non-NULL slots.
760
761         * gio/gicon.override (pygio_do_icon_richcompare): Remove, the code
762         is now directly in _wrap_g_icon_tp_richcompare().
763         (_wrap_g_file_icon_tp_richcompare, _wrap_g_file_icon_tp_hash)
764         (_wrap_g_themed_icon_tp_richcompare, _wrap_g_themed_icon_tp_hash):
765         Remove, duplicating code in this way is not needed anymore.
766
767 2008-08-10  Paul Pogonyshev  <pogonyshev@gmx.net>
768
769         Bug 546120 – make gio.File more Pythonic
770
771         * gio/gfile.override (_wrap_g_file_tp_richcompare)
772         (_wrap_g_file_tp_hash, _wrap_g_file_tp_repr): New functions.
773
774         * tests/test_gio.py (TestFile.test_eq, TestFile.test_hash): New
775         tests.
776
777 2008-08-10  Paul Pogonyshev  <pogonyshev@gmx.net>
778
779         Bug 547104 – improve runtime type wrapper creation
780
781         * gobject/pygobject.c (pygobject_new_with_interfaces): Use new
782         pygobject_find_slot_for() for `tp_richcompare', `tp_compare`,
783         `tp_hash', `tp_iter', `tp_repr', `tp_str' and `tp_print'.
784         (pygobject_find_slot_for): New static function.
785
786 2008-08-10  Jonathan Matthew  <jonathan@d14n.org>
787
788         Bug 547134 – fix docstring line length
789
790         * gio/gio.defs:
791         Fix docstring line lengths so they don't wrap across lines in an 80
792         column terminal.
793
794 2008-08-10  Gian Mario Tagliaretti  <gianmt@gnome.org>
795
796         * gio/gio.defs:
797         Add GFile.query_default_handler which was missing from the defs.
798
799 2008-08-10  Jonathan Matthew  <jonathan@d14n.org>
800
801         Bug 547067 – add File.replace_contents, replace_contents_async,
802         replace_contents_finish.
803
804         * gio/gfile.override:
805         * gio/gio.defs:
806         * tests/test_gio.py:
807         Add overrides, docs, and tests for File.replace_contents,
808         replace_contents_async, and replace_contents_finish.
809
810 2008-08-09  Paul Pogonyshev  <pogonyshev@gmx.net>
811
812         * tests/test_gicon.py (TestThemedIcon.test_constructor): Fix to
813         not use `use_default_fallbacks' property (it's new).
814
815 2008-08-09  Paul Pogonyshev  <pogonyshev@gmx.net>
816
817         Bug 546135 – GIcon and implementations improvements
818
819         * gio/gio.defs (g_file_icon_new): Change from method of gio.File
820         to constructor of gio.FileIcon.
821
822         * tests/test_gicon.py (TestIcon.test_eq, Test_Eq.test_hash)
823         (TestLoadableIcon.setUp): Adapt accordingly.
824         (TestFileIcon): New test case.
825
826 2008-08-09  Paul Pogonyshev  <pogonyshev@gmx.net>
827
828         Bug 546591 – File.copy progress_callback does not work
829
830         * gio/gfile.override (file_progress_callback_marshal): Use
831         PyObject_CallFunction() instead of PyEval_CallFunction().  Use "K"
832         instead of "k" (the latter is not correct for 32-bit platforms).
833         Don't free 'notify' here.
834         (_wrap_g_file_copy): Free 'notify'.
835         (_wrap_g_file_move): Likewise.
836
837         * gio/gio.override (pygio_free_notify): New function.
838         (async_result_callback_marshal): Use it.
839
840         * tests/test_gio.py (TestFile.test_copy_progress.progress): New
841         test.
842
843 2008-08-09  Paul Pogonyshev  <pogonyshev@gmx.net>
844
845         Bug 546135 – GIcon and implementations improvements
846
847         * gio/gio.defs (gio.LoadableIcon.load)
848         (gio.LoadableIcon.load_async, gio.LoadableIcon.load_finish):
849         Document.
850
851         * gio/Makefile.am:
852         * gio/gicon.override: New file: parts of 'gio.override', three
853         methods of gio.LoadableIcon and gio.ThemedIcon constructor.
854
855         * gio/gio.override: Move over all icon-related overrides to
856         'gicon.override'.
857
858         * tests/Makefile.am:
859         * tests/test_gicon.py: New file: parts of 'test_gio.py' and
860         several new gio.Icon tests.
861
862         * tests/test_gio.py (TestThemedIcon): Move over to
863         'test_gicon.py'.
864
865 2008-08-07  Jonathan Matthew  <jonathan@d14n.org>
866
867         Bug 546734 – Missing Py_INCREFs for some file async methods
868
869         * gio/gfile.override:
870         Increment refcounts on callbacks and callback data for
871         append_to_async, create_async, replace_async, query_info_async and
872         load_contents_async as for all other async methods.
873
874 2008-08-06  Johan Dahlin  <johan@gnome.org>
875
876         * gio/gfile.override:
877         * gio/gio.defs:
878         Move the progress callback for move/copy so it's consistent with
879         the documentation and positional arguments. Update documentation as well
880
881 2008-08-06  Johan Dahlin  <johan@gnome.org>
882
883         * glib/pyglib.c (pyglib_enable_threads):
884         * gobject/gobjectmodule.c (pyg_threads_init),
885         (pygobject_enable_threads):
886         Add a pygobject_enable_threads wrapper around pyglib_threads_enable
887         and return 0/-1 which existing gobject based applications expect.
888
889 2008-08-06  Johan Dahlin  <johan@gnome.org>
890
891         * glib/pyglib.c (pyglib_init):
892         return in case of error instead of trying to access the internal
893         types.
894
895 2008-08-06  Paul Pogonyshev  <pogonyshev@gmx.net>
896
897         * gio/gio.override: Add 'pygio_do_icon_richcompare' prototype to
898         header.
899         (_wrap_g_file_icon_tp_repr, _wrap_g_themed_icon_tp_repr): Fix
900         return value type in signature.
901
902 2008-08-05  Paul Pogonyshev  <pogonyshev@gmx.net>
903
904         Bug 546135 – GIcon and implementations improvements
905
906         * gio/gio-types.defs (FileIcon): New 'define-object'.
907
908         * gio/gio.override (pygio_do_icon_richcompare)
909         (_wrap_g_icon_tp_richcompare, _wrap_g_icon_tp_hash)
910         (_wrap_g_file_icon_tp_richcompare, _wrap_g_file_icon_tp_hash)
911         (_wrap_g_file_icon_tp_repr, _wrap_g_themed_icon_tp_richcompare)
912         (_wrap_g_themed_icon_tp_hash, _wrap_g_themed_icon_tp_repr): New
913         functions.
914
915 2008-08-03  Gian Mario Tagliaretti  <gianmt@gnome.org>
916
917         Bug 546046 – Wrap GFile.replace_async and query_info_async
918
919         * tests/test_gio.py:
920         * gio/gfile.override:
921         * gio/gio.defs:
922         Wrap GFile.replace_async and query_info_async with docs and test.
923
924 2008-08-03  Paul Pogonyshev  <pogonyshev@gmx.net>
925
926         * glib/pyglib.h:
927         * glib/pyglib.c (pyglib_enable_threads): Change return value from
928         'gboolean' to 'int' and changed semantics to Pythonic: restores
929         backwards compatibility.
930
931         * gobject/gobjectmodule.c (pyg_threads_init): Treat return value
932         accordingly (bug #544946).
933
934 2008-08-02  Gian Mario Tagliaretti  <gianmt@gnome.org>
935
936         Bug 546020 – Wrap GFile.create_async
937
938         * tests/test_gio.py:
939         * gio/gfile.override:
940         * gio/gio.defs:
941         Wrap GFile.create_async with docs and test
942
943 2008-08-02  Johan Dahlin  <johan@gnome.org>
944
945         * codegen/docgen.py:
946         Remove SGML support, require python 2.4, modernize,
947         PEP-8ify. Make it run on gio.
948
949         * codegen/definitions.py:
950         Make property iterable
951
952         * gio/gio.defs:
953         Include the gio-types.defs file.
954
955 2008-08-02  Johan Dahlin  <johan@gnome.org>
956
957         * glib/glibmodule.c (pyglib_set_prgname):
958         * glib/pygoptioncontext.c (pyg_option_context_init),
959         (pyg_option_context_set_help_enabled),
960         (pyg_option_context_set_ignore_unknown_options),
961         (pyg_option_context_set_main_group),
962         (pyg_option_context_add_group):
963         * glib/pygoptiongroup.c (arg_func), (pyg_option_group_add_entries),
964         (pyg_option_group_set_translation_domain),
965         (pyg_option_group_compare), (pyglib_option_group_register_types):
966         Fix compilation warnings, clean up style and indentation.
967
968 2008-08-02  Gian Mario Tagliaretti  <gianmt@gnome.org>
969
970         Bug 545959 – Wrap GFile.append_to_async
971
972         * tests/test_gio.py:
973         * gio/gfile.override:
974         * gio/gio.defs:
975         Wrap GFile.append_to_async with docs and test
976
977 2008-08-02  Johan Dahlin  <johan@gnome.org>
978
979         * gio/gfileinfo.override:
980         * gio/gio.override:
981         * glib/glibmodule.c (pyglib_get_current_time):
982         * glib/pyglib.c (pyglib_float_from_timeval):
983         * glib/pyglib.h:
984         Add pyglib_float_from_timeval and use it
985
986 2008-08-02  Johan Dahlin  <johan@gnome.org>
987
988         * docs/Makefile.am:
989         * docs/reference/pyglib-constants.xml:
990         * docs/reference/pyglib-functions.xml:
991         * docs/reference/pyglib-maincontext.xml:
992         * docs/reference/pyglib-mainloop.xml:
993         * docs/reference/pygobject-classes.xml:
994         * docs/reference/pygobject-constants.xml:
995         * docs/reference/pygobject-functions.xml:
996         * docs/reference/pygobject-maincontext.xml:
997         * docs/reference/pygobject-mainloop.xml:
998         Separate the glib and gobject bindings in the manual.
999
1000 2008-08-02  Gian Mario Tagliaretti  <gianmt@gnome.org>
1001
1002         Bug 545920 – Wrap GFile.query_writable_namespaces
1003
1004         * tests/test_gio.py:
1005         * gio/gfile.override:
1006         * gio/gio.defs:
1007         Wrap GFile.query_writable_namespaces with docs and test
1008
1009 2008-08-02  Johan Dahlin  <johan@gnome.org>
1010
1011         * gio/gio.defs:
1012         * gio/gfile.override:
1013         * tests/test_gio.py:
1014         Wrap gio.File.move
1015
1016 2008-08-02  Johan Dahlin  <johan@gnome.org>
1017
1018         * gio/Makefile.am:
1019         * gio/gfile.override:
1020         * gio/gio.defs:
1021         * gio/gio.override:
1022         * gio/gvolume.override:
1023         Wrap gio.Volume.mount and gio.Volume.eject
1024
1025 2008-08-01  Gian Mario Tagliaretti  <gianmt@gnome.org>
1026
1027         * gio/gio.defs:
1028         Add docstring for gio.FileInfo.list_attributes
1029
1030 2008-08-01  Johan Dahlin  <johan@gnome.org>
1031
1032         Bug 545861 – g_file_info_get_modification_time is missing
1033         * gio/gfileinfo.override:
1034         * gio/gio.defs:
1035         * tests/test_gio.py:
1036         Wrap, add test and documentation
1037
1038 2008-08-01  Johan Dahlin  <johan@gnome.org>
1039
1040         Bug 545846 – g_vfs_get_supported_uri_schemes is missing
1041
1042         * gio/gio.defs:
1043         * gio/gio.override:
1044         * tests/test_gio.py:
1045         Wrap, add test and documentation
1046
1047 2008-08-01  Johan Dahlin  <johan@gnome.org>
1048
1049         * glib/glibmodule.c (pyglib_set_application_name):
1050         Use %r instead of %s, this is not python!
1051
1052 2008-07-31  Johan Dahlin  <johan@gnome.org>
1053
1054         * glib/glibmodule.c (pyglib_set_prgname)
1055         (pyglib_set_application_name): Use METH_O instead of METH_VARARGS.
1056         (_glib_functions): Add doc strings for idle_add, timeout_add,
1057         timeout_add_seconds, io_add_watch, child_watch_add, source_remove,
1058         main_depth and main_context_default.
1059
1060 2008-07-29  Gian Mario Tagliaretti  <gianmt@gnome.org>
1061
1062         * tests/test_gio.py:
1063         * gio/gfileattribute.override:
1064         * gio/gio.override:
1065         * gio/gio.defs:
1066         * gio/gfile.override:
1067         * gio/Makefile.am: Wrap new object gio.FileAttributeInfo,
1068         g_file_set_attribute and g_file_query_settable_attributes methods.
1069
1070 2008-07-29  Gian Mario Tagliaretti  <gianmt@gnome.org>
1071
1072         * gio/unix-types.defs: Wrap gio.unix.DesktopAppInfo
1073
1074         * gio/gappinfo.override:
1075         * gio/gio.override:
1076         * gio/gio.defs:
1077         * gio/gapplaunchcontext.override:
1078         * gio/Makefile.am: Wrap g_app_info_launch_uris,
1079         g_app_info_launch, g_app_launch_context_get_display and
1080         g_app_launch_context_get_startup_notify_id
1081
1082         * gio/pygio-utils.c:
1083         * gio/pygio-utils.h: Add a couple of useful function to reduce the
1084         code in wrapped methods.
1085
1086 2008-07-29  Johan Dahlin  <johan@gnome.org>
1087
1088         * examples/gio/downloader.py:
1089         * gio/giomodule.c (init_gio):
1090         Add gio.FILE_ATTRIBUTE_* constants and update the examples to use them.
1091
1092 2008-07-29  Johan Dahlin  <johan@gnome.org>
1093
1094         * examples/gio/downloader.py:
1095         Add a new example
1096
1097         * gio/ginputstream.override:
1098         Use a string internally instead of a PyStringObject when
1099         in read_async. Create a new python string in finish and
1100         honor the number of bytes read.
1101
1102 2008-07-28  Johan Dahlin  <johan@gnome.org>
1103
1104         * glib/pyglib-python-compat.h:
1105         * gobject/pygobject-private.h:
1106         Move all compatibility into the same place, fixes build
1107         on python 2.4.
1108
1109 2008-07-27  Johan Dahlin  <johan@gnome.org>
1110
1111         * glib/option.py:
1112         Remove tabs. Use sys.exc_info()[1] to fetch the exception value
1113
1114         * gobject/__init__.py:
1115         * gobject/propertyhelper.py:
1116         Import gobject._gobject instead of just gobject.
1117
1118         * gobject/Makefile.am:
1119         * gobject/constants.py.in:
1120         * gobject/generate-constants.c (main):
1121         Don't add long suffix if python >= 3.0
1122
1123 2008-07-27  Johan Dahlin  <johan@gnome.org>
1124
1125         * glib/pyglib-python-compat.h:
1126         * gobject/gobjectmodule.c (pyg_object_new),
1127         (pyg__install_metaclass):
1128         * gobject/pygboxed.c (pyg_boxed_dealloc), (pyg_boxed_init),
1129         (pyg_register_boxed):
1130         * gobject/pygenum.c (pyg_enum_reduce):
1131         * gobject/pyginterface.c (pyg_interface_init),
1132         (pyg_register_interface):
1133         * gobject/pygobject.c (pygobject_get_inst_data),
1134         (pygobject_register_class), (pygobject_new_with_interfaces),
1135         (pygobject_dealloc), (pygobject_repr), (pygobject_emit),
1136         (pygobject_chain_from_overridden), (pygobject_weak_ref_notify):
1137         * gobject/pygparamspec.c (pygobject_paramspec_register_types):
1138         * gobject/pygpointer.c (pyg_pointer_dealloc), (pyg_pointer_init),
1139         (pyg_register_pointer):
1140         * gobject/pygtype.c (pyg_type_from_object),
1141         (pyg_value_array_from_pyobject), (pyg_value_from_pyobject),
1142         (pyg_object_descr_doc_get):
1143         Use the Py_TYPE macro everywhere.
1144
1145 2008-07-27  Johan Dahlin  <johan@gnome.org>
1146
1147         * glib/pyglib-python-compat.h:
1148         Add a Py_TYPE macro for accessing ob_type.
1149         * glib/glibmodule.c (pyglib_register_constants):
1150         * gobject/gobjectmodule.c (pygobject__g_instance_init),
1151         (pyg_integer_richcompare):
1152         * gobject/pygenum.c (pyg_enum_repr), (pyg_enum_from_gtype),
1153         (pyg_enum_add), (pyg_enum_get_value_name),
1154         (pyg_enum_get_value_nick):
1155         * gobject/pygflags.c (pyg_flags_repr), (pyg_flags_from_gtype),
1156         (pyg_flags_add), (pyg_flags_and), (pyg_flags_or), (pyg_flags_xor),
1157         (pyg_flags_get_first_value_name), (pyg_flags_get_first_value_nick),
1158         (pyg_flags_get_value_names), (pyg_flags_get_value_nicks):
1159         Use Py_TYPE and PyLong macros to access struct fields
1160
1161 2008-07-27  Johan Dahlin  <johan@gnome.org>
1162
1163         * gobject/gobjectmodule.c (pyg_param_spec_from_object),
1164         (add_properties), (pyg_signal_new), (pyg_signal_list_ids),
1165         (pyg_signal_lookup), (pyg_signal_query):
1166         * gobject/pygenum.c (pyg_enum_richcompare), (pyg_enum_new),
1167         (pyg_enum_from_gtype), (pyg_enum_add), (pyg_enum_reduce),
1168         (pygobject_enum_register_types):
1169         * gobject/pygflags.c (pyg_flags_richcompare), (pyg_flags_new),
1170         (pyg_flags_from_gtype), (pyg_flags_add), (pyg_flags_and),
1171         (pyg_flags_or), (pyg_flags_xor), (pygobject_flags_register_types):
1172         * gobject/pygobject-private.h:
1173         * gobject/pygobject.c (pygobject_disconnect_by_func),
1174         (pygobject_handler_block_by_func),
1175         (pygobject_handler_unblock_by_func), (pygobject_get_refcount):
1176         * gobject/pygparamspec.c (pyg_param_spec_getattr):
1177         * gobject/pygtype.c (_wrap_g_type_wrapper__get_depth),
1178         (pyg_type_from_object), (pyg_enum_get_value),
1179         (pyg_flags_get_value), (pyg_value_from_pyobject),
1180         (pyg_value_as_pyobject):
1181         Use _PyLong macros.
1182
1183 2008-07-27  Johan Dahlin  <johan@gnome.org>
1184
1185         * gobject/pygboxed.c (pygobject_boxed_register_types):
1186         * gobject/pygenum.c (pygobject_enum_register_types):
1187         * gobject/pygflags.c (pygobject_flags_register_types):
1188         * gobject/pygobject.c (pygobject_object_register_types):
1189         * gobject/pygparamspec.c (pygobject_paramspec_register_types):
1190         * gobject/pygpointer.c (pygobject_pointer_register_types):
1191         * gobject/pygtype.c (pygobject_type_register_types):
1192         Use PYGLIB_DEFINE_TYPE macro and move struct field initialization
1193         to the registration methods.
1194
1195 2008-07-27  Johan Dahlin  <johan@gnome.org>
1196
1197         * glib/pyglib-python-compat.h:
1198         Add _PyUnicode_Type macro
1199
1200         * gobject/gobjectmodule.c (pyg_type_name), (pyg_type_from_name),
1201         (_pyg_signal_accumulator), (add_signals), (add_properties),
1202         (get_type_name_for_class), (pyg_signal_list_names),
1203         (pyg_signal_name), (pyg_signal_query), (pyg_object_new),
1204         (pyg_add_emission_hook), (pyg_remove_emission_hook):
1205         * gobject/pygboxed.c (pyg_boxed_repr):
1206         * gobject/pygenum.c (pyg_enum_repr), (pyg_enum_add),
1207         (pyg_enum_get_value_name), (pyg_enum_get_value_nick):
1208         * gobject/pygflags.c (pyg_flags_repr), (pyg_flags_add),
1209         (pyg_flags_get_first_value_name), (pyg_flags_get_first_value_nick),
1210         (pyg_flags_get_value_names), (pyg_flags_get_value_nicks):
1211         * gobject/pygobject.c (build_parameter_list), (PyGProps_getattro),
1212         (PyGProps_setattro), (pygobject_register_class), (pygobject_repr),
1213         (pygobject_init), (pygobject_get_properties),
1214         (pygobject_set_properties), (pygobject_connect),
1215         (pygobject_connect_after), (pygobject_connect_object),
1216         (pygobject_connect_object_after), (pygobject_emit),
1217         (pygobject_stop_emission), (pygobject_disconnect_by_func),
1218         (pygobject_handler_block_by_func),
1219         (pygobject_handler_unblock_by_func),
1220         (pygobject_object_register_types):
1221         * gobject/pygparamspec.c (pyg_param_spec_repr),
1222         (pyg_param_spec_getattr):
1223         * gobject/pygpointer.c (pyg_pointer_repr):
1224         * gobject/pygtype.c (pyg_type_wrapper_repr),
1225         (_wrap_g_type_wrapper__get_name), (pyg_type_from_object),
1226         (pyg_enum_get_value), (pyg_flags_get_value),
1227         (pyg_value_from_pyobject), (pyg_value_as_pyobject),
1228         (object_doc_descr_get), (_pyg_strv_from_gvalue),
1229         (_pyg_strv_to_gvalue):
1230
1231         Use _PyUnicode_* macros in the gobject module
1232
1233 2008-07-27  Johan Dahlin  <johan@gnome.org>
1234
1235         * gobject/Makefile.am:
1236         * gobject/gobjectmodule.c (PYGLIB_MODULE_START):
1237         * gobject/pygobject-private.h:
1238         Use glib macros to define the module, update export regexp.
1239
1240 2008-07-27  Johan Dahlin  <johan@gnome.org>
1241
1242         * gobject/Makefile.am:
1243         * gobject/gobjectmodule.c (init_gobject):
1244         * gobject/pygboxed.c (pygobject_boxed_register_types):
1245         * gobject/pygboxed.h:
1246         * gobject/pygenum.c (pygobject_enum_register_types):
1247         * gobject/pygenum.h:
1248         * gobject/pygflags.c (pygobject_flags_register_types):
1249         * gobject/pygflags.h:
1250         * gobject/pygpointer.c (pygobject_pointer_register_types):
1251         * gobject/pygpointer.h:
1252         Split out quark and type registration to the respective
1253         implementation source files, add headers.
1254
1255 2008-07-27  Johan Dahlin  <johan@gnome.org>
1256
1257         * gobject/Makefile.am:
1258         * gobject/gobjectmodule.c (pygobject_register_api),
1259         (pygobject_register_constants), (pygobject_register_features),
1260         (pygobject_register_version_tuples), (pygobject_register_warnings),
1261         (init_gobject):
1262         * gobject/pygobject-private.h:
1263         * gobject/pygobject.c (pyobject_copy), (pyobject_free),
1264         (pygobject_object_register_types):
1265         * gobject/pygtype.c (_pyg_strv_from_gvalue), (_pyg_strv_to_gvalue),
1266         (pygobject_type_register_types):
1267         * gobject/pygtype.h:
1268         Move off a bit more to separate functions, cleaning up the init_glib
1269         a bit more.
1270
1271 2008-07-27  Johan Dahlin  <johan@gnome.org>
1272
1273         * gobject/Makefile.am:
1274         * gobject/gobjectmodule.c (init_gobject):
1275         * gobject/pygobject-private.h:
1276         * gobject/pygobject.c:
1277         * gobject/pygparamspec.c (pygobject_paramspec_register_types):
1278         * gobject/pygparamspec.h:
1279         * gobject/pygtype.c:
1280         Move paramspec registration to a separate file, add a header
1281         for the internal API.
1282
1283 2008-07-27  Paul Pogonyshev  <pogonyshev@gmx.net>
1284
1285         * gobject/pygtype.c (pyg_enum_get_value): Issue warning if 'obj'
1286         is a PyGEnum of wrong type, i.e. not matching 'enum_type' (bug
1287         #503771).
1288
1289 2008-07-26  Johan Dahlin  <johan@gnome.org>
1290
1291         reviewed by: <delete if not using a buddy>
1292
1293         * glib/pyglib-python-compat.h:
1294         * glib/pyglib.h:
1295         Make a few macros public
1296
1297         * gobject/Makefile.am:
1298         * gobject/gobjectmodule.c (init_gobject):
1299         * gobject/pyginterface.c (pyg_interface_init),
1300         (pyg_interface_free), (pyg_register_interface),
1301         (pyg_register_interface_info), (pyg_lookup_interface_info),
1302         (pygobject_interface_register_types):
1303         * gobject/pyginterface.h:
1304         * gobject/pygobject-private.h:
1305         * gobject/pygobject.c:
1306         Move GInterface wrapper into its own file
1307
1308 2008-07-26  Johan Dahlin  <johan@gnome.org>
1309
1310         * glib/Makefile.am:
1311         Also export PyInit_glib
1312         * glib/__init__.py:
1313         import glib._glib instead of just _glib
1314         * glib/pyglib-python-compat.h:
1315         * glib/pygoptioncontext.c (pyg_option_context_parse):
1316         * glib/pygsource.c (source_repr), (pyg_source_attach),
1317         (pyg_source_get_priority), (pyg_source_set_priority),
1318         (pyg_source_get_id), (pyg_source_prepare), (pyg_poll_fd_repr):
1319         * glib/pygspawn.c (pyg_pid_close), (pyg_pid_free), (pyg_pid_new),
1320         (pyglib_spawn_async), (pyglib_spawn_register_types):
1321         Go over the rest and replace missing symbols on python3.
1322         the glib module successfully compiles and runs now.
1323
1324 2008-07-26  Johan Dahlin  <johan@gnome.org>
1325
1326         * glib/pygiochannel.c (py_io_channel_shutdown),
1327         (py_io_channel_set_buffer_size), (py_io_channel_get_buffer_size),
1328         (py_io_channel_set_buffered), (py_io_channel_get_buffered),
1329         (py_io_channel_set_encoding), (py_io_channel_get_encoding),
1330         (py_io_channel_read_chars), (py_io_channel_write_chars),
1331         (py_io_channel_write_lines), (py_io_channel_flush),
1332         (py_io_channel_set_flags), (py_io_channel_get_flags),
1333         (py_io_channel_get_buffer_condition),
1334         (py_io_channel_set_close_on_unref), (py_io_channel_add_watch),
1335         (py_io_channel_win32_poll), (py_io_channel_win32_make_pollfd),
1336         (py_io_channel_read_line), (py_io_channel_read_lines),
1337         (py_io_channel_seek), (py_io_channel_init):
1338         * glib/pyglib.c (pyglib_gerror_exception_check):
1339         * glib/pygoptioncontext.c (pyg_option_context_init):
1340         * glib/pygoptiongroup.c (check_if_owned):
1341         * glib/pygsource.c (pyg_idle_init), (pyg_timeout_init),
1342         (pyg_poll_fd_init):
1343         gobject -> glib
1344
1345 2008-07-26  Johan Dahlin  <johan@gnome.org>
1346
1347         * glib/pygmaincontext.c (pyglib_maincontext_register_types):
1348         * glib/pygmainloop.c (pyg_main_loop_init),
1349         (pyglib_mainloop_register_types):
1350         * glib/pygoptioncontext.c (pyg_option_context_set_main_group),
1351         (pyglib_option_context_register_types):
1352         * glib/pygoptiongroup.c (pyglib_option_group_register_types):
1353         * glib/pygspawn.c (pyglib_spawn_register_types):
1354         Convert the pid/mainloop/maincontext/optiongroup/optioncontext.
1355
1356 2008-07-26  Johan Dahlin  <johan@gnome.org>
1357
1358         * glib/pygsource.c (pyglib_source_register_types):
1359         Convert the source objects to use macros, saves ~150 lines of code!
1360
1361 2008-07-26  Johan Dahlin  <johan@gnome.org>
1362
1363         * glib/glibmodule.c (get_handler_priority), (pyglib_idle_add),
1364         (pyglib_timeout_add), (pyglib_timeout_add_seconds),
1365         (pyglib_io_add_watch), (pyglib_child_watch_add),
1366         (pyglib_markup_escape_text), (pyglib_main_depth),
1367         (pyglib_filename_from_utf8), (pyglib_get_application_name),
1368         (pyglib_get_prgname), (PYGLIB_MODULE_START):
1369         * glib/pygiochannel.c (py_io_channel_next),
1370         (py_io_channel_shutdown), (py_io_channel_get_buffer_size),
1371         (py_io_channel_get_buffered), (py_io_channel_get_encoding),
1372         (py_io_channel_read_chars), (py_io_channel_write_chars),
1373         (py_io_channel_write_lines), (py_io_channel_flush),
1374         (py_io_channel_set_flags), (py_io_channel_get_flags),
1375         (py_io_channel_get_buffer_condition), (py_io_channel_win32_poll),
1376         (py_io_channel_read_line), (py_io_channel_read_lines),
1377         (py_io_channel_seek), (pyglib_iochannel_register_types):
1378         * glib/pyglib-private.h:
1379         * glib/pyglib-python-compat.h:
1380         * glib/pyglib.c (pyglib_init), (pyglib_error_check),
1381         (pyglib_gerror_exception_check),
1382         (pyglib_register_exception_for_domain):
1383         Add macros for supporting additional python versions.
1384         Start using them for the glib module. Tested on python 2.5 and 3.0.
1385
1386 2008-07-26  Johan Dahlin  <johan@gnome.org>
1387
1388         * configure.ac:
1389         * m4/python.m4:
1390         Add macros which are compatible with python > 2.6.
1391
1392 2008-07-26  Johan Dahlin  <johan@gnome.org>
1393
1394         * configure.ac:
1395         Post release version bump
1396
1397 === 2.15.2 ===
1398 2008-07-26  Johan Dahlin  <johan@gnome.org>
1399
1400         * NEWS: Update
1401
1402 2008-07-26  Johan Dahlin  <johan@gnome.org>
1403
1404         * gobject/Makefile.am (_gobject_la_SOURCES): Build fix, remove
1405         extra \
1406
1407         * examples/gio/directory-async.py:
1408         * gio/Makefile.am:
1409         * gio/giomodule.c (init_gio):
1410         * glib/pyglib.c (pyglib_error_check),
1411         (pyglib_register_exception_for_domain):
1412         * glib/pyglib.h:
1413         * tests/test_gio.py:
1414         Add a new API for registering exceptions for a GError domain.
1415         Register a new exception for G_IO_ERROR, update tests
1416         and examples to use the new exception.
1417
1418 2008-07-26  Johan Dahlin  <johan@gnome.org>
1419
1420         * glib/pygoptioncontext.c (pyg_option_context_set_main_group),
1421         (pyg_option_context_add_group):
1422         Send in a PyObject instead of a PyGOptionGroup object.
1423
1424 2008-07-26  Johan Dahlin  <johan@gnome.org>
1425
1426         * glib/Makefile.am:
1427         * glib/glibmodule.c (pyglib_register_constants), (init_glib):
1428         * glib/option.py:
1429         * glib/pyglib.c (pyglib_init),
1430         (pyglib_option_group_transfer_group), (pyglib_option_group_new),
1431         (pyglib_option_context_new):
1432         * glib/pyglib.h:
1433         * glib/pygoptioncontext.c (pyg_option_context_parse),
1434         (pyg_option_context_set_main_group),
1435         (pyg_option_context_add_group),
1436         (pyglib_option_context_register_types):
1437         * glib/pygoptioncontext.h:
1438         * glib/pygoptiongroup.c (arg_func),
1439         (pyglib_option_group_register_types):
1440         * glib/pygoptiongroup.h:
1441         * gobject/Makefile.am:
1442         * gobject/__init__.py:
1443         * gobject/gobjectmodule.c (init_gobject):
1444         * gobject/option.py:
1445         * gobject/pygobject-private.h:
1446         * gobject/pygoptioncontext.c:
1447         * gobject/pygoptiongroup.c:
1448         Move option over from gobject to glib.
1449
1450 2008-07-26  Johan Dahlin  <johan@gnome.org>
1451
1452         * tests/common.py:
1453         * tests/test_conversion.py:
1454         * tests/test_enum.py:
1455         * tests/test_interface.py:
1456         * tests/test_option.py:
1457         * tests/test_source.py:
1458         * tests/test_subprocess.py:
1459         * tests/test_subtype.py:
1460         * tests/test_thread.py:
1461         * tests/test_unknown.py:
1462         Run pyflakes on the testsuite, remove unused imports
1463         and reorganize others.
1464
1465 2008-07-26  Johan Dahlin  <johan@gnome.org>
1466
1467         * glib/glibmodule.c (pyglib_register_constants), (init_glib):
1468         * gobject/__init__.py:
1469         * gobject/gobjectmodule.c (init_gobject):
1470         Move over glib constants to gobject
1471         * tests/test_gio.py:
1472         * tests/test_mainloop.py:
1473         * tests/test_source.py:
1474         * tests/test_subprocess.py:
1475         * tests/test_thread.py:
1476         Update tests to refer to glib when appropriate
1477
1478 2008-07-26  Johan Dahlin  <johan@gnome.org>
1479
1480         * README:
1481         * configure.ac:
1482         Bump required glib version to 2.10
1483
1484 2008-07-26  Johan Dahlin  <johan@gnome.org>
1485
1486         * glib/glibmodule.c (child_watch_dnotify),
1487         (pyglib_child_watch_add):
1488         * glib/pygiochannel.c (pyg_iowatch_data_free),
1489         (py_io_channel_add_watch):
1490         * glib/pygspawn.c (_pyg_spawn_async_callback),
1491         (pyglib_spawn_async):
1492         Use g_slice_new instead of g_new
1493
1494 2008-07-25  Johan Dahlin  <johan@gnome.org>
1495
1496         * gobject/Makefile.am:
1497         * tests/Makefile.am:
1498         Make distcheck pass
1499
1500 2008-07-25  Johan Dahlin  <johan@gnome.org>
1501
1502         * gobject/gobjectmodule.c (init_gobject):
1503         * gobject/pygobject-private.h:
1504         Remove private structures which moved to pyglib.
1505
1506 2008-07-24  Johan Dahlin  <johan@gnome.org>
1507
1508         Bug 544600 – pygobject building failed since 839 revision,
1509         error : "Py_ssize_t" undeclared
1510
1511         * glib/pyglib-private.h: Add backward compatibility macros for
1512         python 2.4.
1513
1514         * gio/gfile.override:
1515         * gio/gfileenumerator.override:
1516         * gio/ginputstream.override:
1517         * gio/gio.defs:
1518         * gio/gio.override:
1519         * gio/goutputstream.override:
1520         * tests/test_gio.py:
1521         Wrap gio.File.copy, add tests and documentation.
1522         Rename PyGAsyncRequestNotify to PyGIONotify and reuse it.
1523
1524 2008-07-23  Johan Dahlin  <johan@gnome.org>
1525
1526         * glib/pyglib.c (_pyglib_destroy_notify):
1527         Rename the function too, not just the prototype!
1528
1529 2008-07-21  Johan Dahlin  <johan@gnome.org>
1530
1531         * glib/glibmodule.c (pyglib_idle_add), (pyglib_timeout_add),
1532         (pyglib_timeout_add_seconds), (pyglib_io_add_watch):
1533         * glib/pyglib-private.h:
1534         * glib/pyglib.c (pyglib_destroy_notify), (_pyglib_handler_marshal):
1535         * glib/pyglib.h:
1536         * glib/pygsource.c (pyg_source_set_callback):
1537         Make pyglib_destroy_notify and pyglib_handler_marshal private.
1538         Add a few public prototypes.
1539
1540 2008-07-21  Johan Dahlin  <johan@gnome.org>
1541
1542         * glib/glibmodule.c (pyglib_idle_add), (pyglib_timeout_add),
1543         (pyglib_timeout_add_seconds), (pyglib_io_add_watch),
1544         (pyglib_source_remove), (pyglib_child_watch_add),
1545         (pyglib_markup_escape_text), (pyglib_get_current_time),
1546         (pyglib_main_depth), (pyglib_filename_display_name),
1547         (pyglib_filename_display_basename), (pyglib_filename_from_utf8),
1548         (pyglib_get_application_name), (pyglib_set_application_name),
1549         (pyglib_get_prgname), (pyglib_set_prgname), (pyglib_register_api),
1550         (pyglib_register_error):
1551         Mark as static, rename from pyg_* -> pyglib_*. Fill in api struct,
1552         rename struct and remove function suffix.
1553
1554 2008-07-21  Johan Dahlin  <johan@gnome.org>
1555
1556         * glib/Makefile.am:
1557         * glib/glibmodule.c (pyg_idle_add), (pyg_timeout_add),
1558         (pyg_timeout_add_seconds), (pyg_io_add_watch),
1559         (pyglib_register_api), (pyglib_register_error),
1560         (pyglib_register_version_tuples), (init_glib):
1561         * glib/pygiochannel.c (py_io_channel_next),
1562         (py_io_channel_shutdown), (py_io_channel_set_encoding),
1563         (py_io_channel_read_chars), (py_io_channel_write_chars),
1564         (py_io_channel_write_lines), (py_io_channel_flush),
1565         (py_io_channel_set_flags), (py_io_channel_read_line),
1566         (py_io_channel_read_lines), (py_io_channel_seek),
1567         (py_io_channel_init), (pyglib_iochannel_register_types):
1568         * glib/pygiochannel.h:
1569         * glib/pyglib-private.h:
1570         * glib/pyglib.c (pyglib_threads_enabled),
1571         (pyglib_gil_state_ensure), (pyglib_gil_state_release),
1572         (pyglib_enable_threads), (pyglib_block_threads),
1573         (pyglib_unblock_threads), (pyglib_set_thread_block_funcs),
1574         (pyglib_handler_marshal), (pyglib_destroy_notify):
1575         * glib/pyglib.h:
1576         * glib/pygsource.c (pyg_source_set_callback),
1577         (pyglib_source_register_types):
1578         * glib/pygsource.h:
1579         * glib/pygspawn.c (pyglib_spawn_register_types):
1580         * glib/pygspawn.h:
1581         * gobject/Makefile.am:
1582         * gobject/__init__.py:
1583         * gobject/gobjectmodule.c (pyg_set_thread_block_funcs),
1584         (init_gobject):
1585         * gobject/pygiochannel.c:
1586         * gobject/pygobject-private.h:
1587         * gobject/pygsource.c:
1588         Move over Source, IOChannel, Idle, Timeout and PollFD to glib from
1589         gobject.
1590         Clean up and add a bit of new api for glib.
1591
1592 2008-07-21  Johan Dahlin  <johan@gnome.org>
1593
1594         * configure.ac:
1595         Use yes/no instead of true/false. Avoid bashism.
1596         Fix another logic bug, and let's hope I didn't break anything
1597
1598 2008-07-20  Paul Pogonyshev  <pogonyshev@gmx.net>
1599
1600         * configure.ac (pygobject_CODEGEN_DEFINES): Fix libffi check
1601         logic.
1602
1603 2008-07-20  Johan Dahlin  <johan@gnome.org>
1604
1605         * glib/Makefile.am:
1606         * glib/glibmodule.c (pyglib_main_context_default), (init_glib):
1607         * glib/pyglib.c (pyglib_init), (pyglib_threads_enabled),
1608         (pyglib_main_context_new):
1609         * glib/pyglib.h:
1610         * glib/pygmaincontext.c (_wrap_g_main_context_iteration),
1611         (pyglib_maincontext_register_types):
1612         * glib/pygmaincontext.h:
1613         * glib/pygmainloop.c (pyg_signal_watch_prepare),
1614         (pyg_signal_watch_check), (pyg_main_loop_new),
1615         (_wrap_g_main_loop_get_context), (_wrap_g_main_loop_run),
1616         (pyglib_mainloop_register_types):
1617         * glib/pygmainloop.h:
1618         * gobject/Makefile.am:
1619         * gobject/__init__.py:
1620         * gobject/gobjectmodule.c (pyg_destroy_notify), (pyobject_free),
1621         (pyg_object_set_property), (pyg_object_get_property),
1622         (_pyg_signal_accumulator), (pygobject__g_instance_init),
1623         (pyg_handler_marshal), (pygobject_gil_state_ensure),
1624         (pygobject_gil_state_release), (marshal_emission_hook),
1625         (_log_func), (init_gobject):
1626         * gobject/pygboxed.c (pyg_boxed_dealloc), (pyg_boxed_new):
1627         * gobject/pygenum.c (pyg_enum_add):
1628         * gobject/pygflags.c (pyg_flags_add):
1629         * gobject/pygiochannel.c (pyg_iowatch_marshal):
1630         * gobject/pygmaincontext.c:
1631         * gobject/pygmainloop.c:
1632         * gobject/pygobject-private.h:
1633         * gobject/pygobject.c (pygobject_data_free), (pyg_toggle_notify),
1634         (pygobject_new_with_interfaces), (pygobject_weak_ref_notify):
1635         * gobject/pygobject.h:
1636         * gobject/pygoptiongroup.c (destroy_g_group), (arg_func):
1637         * gobject/pygpointer.c (pyg_pointer_new):
1638         * gobject/pygsource.c (pyg_source_get_context),
1639         (pyg_source_prepare), (pyg_source_check), (pyg_source_dispatch),
1640         (pyg_source_finalize):
1641         * gobject/pygtype.c (pyg_closure_invalidate),
1642         (pyg_closure_marshal), (pyg_signal_class_closure_marshal):
1643         * tests/common.py:
1644
1645         Move maincontext and mainloop over to glib.
1646         Update the threadstate api to use the variant in glib.
1647
1648 2008-07-20  Johan Dahlin  <johan@gnome.org>
1649
1650         * glib/Makefile.am:
1651         * gobject/Makefile.am:
1652         * gobject/__init__.py:
1653         * gobject/gobjectmodule.c (pyg_threads_init), (pyg_error_check),
1654         (pyg_gerror_exception_check), (init_gobject):
1655         * gobject/option.py:
1656         Install the glib module, the helper library and the headers.
1657         Use it from gobject and remove the old glib specific code from there.
1658
1659 2008-07-20  Johan Dahlin  <johan@gnome.org>
1660
1661         * configure.ac:
1662         * gobject/Makefile.am:
1663         Use pkg-config to check for libffi again.
1664
1665 2008-07-20  Johan Dahlin  <johan@gnome.org>
1666
1667         * glib/Makefile.am:
1668         * glib/glibmodule.c (pyg_main_context_default):
1669         * glib/pyglib.c (pyglib_gerror_exception_check):
1670         * glib/pyglib.h:
1671         Rename helper library to libpyglib-2.0.
1672         Move over pyg_gerror_exception_check as well.
1673
1674 2008-07-20  Johan Dahlin  <johan@gnome.org>
1675
1676         * Makefile.am:
1677         * configure.ac:
1678         * glib/Makefile.am:
1679         * glib/__init__.py:
1680         * glib/glibmodule.c (pyg_destroy_notify), (get_handler_priority),
1681         (pyg_handler_marshal), (pyg_idle_add), (pyg_timeout_add),
1682         (pyg_timeout_add_seconds), (iowatch_marshal), (pyg_io_add_watch),
1683         (pyg_source_remove), (pyg_main_context_default),
1684         (child_watch_func), (child_watch_dnotify), (pyg_child_watch_add),
1685         (pyg_markup_escape_text), (pyg_get_current_time), (pyg_main_depth),
1686         (pyg_filename_display_name), (pyg_filename_display_basename),
1687         (pyg_filename_from_utf8), (pyg_get_application_name),
1688         (pyg_set_application_name), (pyg_get_prgname), (pyg_set_prgname),
1689         (pyg_register_api), (pyg_register_error),
1690         (pyg_register_version_tuples), (init_glib):
1691         * glib/pyglib-private.h:
1692         * glib/pyglib.c (pyglib_init), (pyglib_init_internal),
1693         (pyglib_gil_state_ensure), (pyglib_gil_state_release),
1694         (pyglib_enable_threads), (pyglib_gil_state_ensure_py23),
1695         (pyglib_gil_state_release_py23), (pyglib_error_check):
1696         * glib/pyglib.h:
1697         * glib/pygspawn.c (pyg_pid_close), (pyg_pid_free),
1698         (pyg_pid_tp_init), (pyg_pid_new), (_pyg_spawn_async_callback),
1699         (pyglib_spawn_async), (pyg_spawn_register_types):
1700         * glib/pygspawn.h:
1701         Add glib bindings, currently not installed or used.
1702         Add some internal API and move over a couple of functions
1703         from the gobject module. Still very much a work in progress.
1704
1705 2008-07-19  Johan Dahlin  <johan@gnome.org>
1706
1707         * gio/gio.override:
1708         Ignore a bunch of functions which are not relevant.
1709
1710 2008-07-19  Johan Dahlin  <johan@gnome.org>
1711
1712         * gio/gfile.override:
1713         * gio/gio.defs:
1714         * gio/gio.override:
1715         * tests/test_gio.py:
1716         Bind gio.Mount.unmount, gio.File.mount_mountable,
1717         gio.File.unmount_mountable and gio.File.mount_enclosing_volume.
1718         Add documents and tests.
1719
1720 2008-07-19  Johan Dahlin  <johan@gnome.org>
1721
1722         * gio/gio.override: Set module name back to
1723         gio, as setting it to gio._gio breaks pydoc.
1724
1725         * gio/gio.defs:
1726         Use property based constructors when possible.
1727
1728 2008-07-19  Johan Dahlin  <johan@gnome.org>
1729
1730         * examples/gio/directory-async.py:
1731         * gio/gfileenumerator.override:
1732         * gio/gio.defs:
1733         * tests/test_gio.py:
1734         Wrap gio.FileEnumerator.next_files_async/next_files_done.
1735         Update the example to use them instead of the synchronous versions,
1736         add documentation and tests.
1737
1738 2008-07-19  Johan Dahlin  <johan@gnome.org>
1739
1740         * examples/gio/directory-async.py:
1741         Only fetch name, saves a couple of syscalls.
1742         * gio/gio.override:
1743         Set name to gio._gio so pychecker/pydoc works.
1744
1745 2008-07-18  Johan Dahlin  <johan@gnome.org>
1746
1747         * examples/gio/directory-async.py:
1748         * gio/gfile.override:
1749         * gio/gfileenumerator.override:
1750         * gio/gio.defs:
1751         * tests/test_gio.py:
1752         Wrap gio.File.enumerate_children_async, add tests, docstring
1753         and an example.
1754         Also document gio.File.enumerate while we're at it.
1755
1756 2008-07-18  Johan Dahlin  <johan@gnome.org>
1757
1758         * gio/gfile.override:
1759         Use %zd instead of %d since it's a Py_ssize_t and not an int.
1760
1761 2008-07-18  Johan Dahlin  <johan@gnome.org>
1762
1763         * gio/pygio-utils.h:
1764         define NO_IMPORT_PYGOBJECT before including pygobject.h
1765
1766 2008-07-18  Johan Dahlin  <johan@gnome.org>
1767
1768         * gio/giomodule.c (init_gio):
1769         Require pygobject 2.15.2
1770
1771 2008-07-17  Johan Dahlin  <johan@gnome.org>
1772
1773         * gio/giomodule.c (init_gio):
1774         Add a pygio_version module attribute
1775         (DL_EXPORT): The module is called gio._gio, not just _gio.
1776
1777 2008-07-17  Johan Dahlin  <johan@gnome.org>
1778
1779         * gio/gio-types.defs:
1780         Rename gio.IOErrorEnum to gio.ErrorEnum
1781
1782 2008-07-17  Johan Dahlin  <johan@gnome.org>
1783
1784         * gio/giomodule.c (init_gio):
1785         Add gio.ERROR which maps to the G_IO_ERROR quark.
1786
1787 2008-07-17  Johan Dahlin  <johan@gnome.org>
1788
1789         * gio/giomodule.c (init_gio):
1790         Use the prefix G_IO_ for stripping constants instead of just G_
1791         * gobject/gobjectmodule.c (pyg_constant_strip_prefix):
1792         Check so the fist part of name and strip_prefix are the same,
1793         if they don't, just strip of the part of strip_prefix which
1794         matches.
1795
1796         This removes the initial IO_* prefix for some constants in gio.
1797         Eg, gio.IO_ERROR_* -> gio.ERROR_*
1798
1799 2008-07-16  Johan Dahlin  <johan@gnome.org>
1800
1801         * configure.ac: Post release version bump
1802
1803 === 2.15.1 ===
1804 2008-07-16  Johan Dahlin  <johan@gnome.org>
1805
1806         * NEWS: Update
1807
1808 2008-07-15  Paul Pogonyshev  <pogonyshev@gmx.net>
1809
1810         * codegen/pygobject-codegen-2.0.in: Rename from
1811         'pygtk-codegen-2.0.in'.
1812
1813         * configure.ac:
1814         * codegen/Makefile.am: Update accordingly.
1815
1816 2008-07-15  Johan Dahlin  <johan@gnome.org>
1817
1818         * configure.ac: Post release version bump
1819
1820 === 2.15.0 ===
1821 2008-07-15  Johan Dahlin  <johan@gnome.org>
1822
1823         New version
1824
1825         * NEWS: Update
1826
1827         * tests/Makefile.am:
1828         Make sure we can distcheck the gio module properly
1829
1830 2008-07-15  Johan Dahlin  <johan@gnome.org>
1831
1832         Bug 450659 – h2def.py - export 'typedef struct' object definitions not
1833         working
1834
1835         * codegen/h2def.py:
1836         Patch by Lauro Moura
1837
1838 2008-07-14  Johan Dahlin  <johan@gnome.org>
1839
1840         Bug 471559 – add AM_PROG_CC_C_O to configure.ac for recent automake
1841
1842         * configure.ac:
1843         Patch by Tim Mooney
1844
1845 2008-07-14  Johan Dahlin  <johan@gnome.org>
1846
1847         Bug 448173 – use python-config to get python includes
1848
1849         * configure.ac:
1850         Really close the by, patch by Matthias Klose
1851
1852 2008-07-14  Johan Dahlin  <johan@gnome.org>
1853
1854         Bug 378704 – OptionParser.parse_args() returns unexpected results
1855
1856         * gobject/option.py:
1857         Patch by Johannes Hölzl
1858
1859 2008-07-14  Johan Dahlin  <johan@gnome.org>
1860
1861         Bug 491773 – autoconf failure: .m4 files cannot be found
1862
1863         * Makefile.am:
1864         Patch by macks@netspace.org
1865
1866 2008-07-14  Gian Mario Tagliaretti  <gianmt@gnome.org>
1867
1868         * gio/gfile.override: wrap File.load_contents_async and
1869         File.load_contents_finish
1870
1871         * gio/gio.defs: Add docstring for the above methods.
1872
1873         * tests/test_gio.py: Add a test for the above methods.
1874
1875 2008-07-14  Johan Dahlin  <johan@gnome.org>
1876
1877         Bug 487523 – Add xslfiles variable to .pc.in files
1878
1879         * pygobject-2.0-uninstalled.pc.in:
1880         Add xslfiles variable, patch by Damien Carbery
1881
1882 2008-07-14  Johan Dahlin  <johan@gnome.org>
1883
1884         * gio/gio.defs:
1885         Remove g_file_input_stream_seek and g_file_output_stream_seek,
1886         they already implement the seekable interface.
1887
1888 2008-07-14  Johan Dahlin  <johan@gnome.org>
1889
1890         Bug 504337 - crash bug in gobject.Timeout and gobject.Idle
1891
1892         * gobject/pygsource.c:
1893         * tests/test_source.py:
1894         Fix crash in Timeout and Idle, patch by Bryan Silverthorn.
1895
1896 2008-07-14  Johan Dahlin  <johan@gnome.org>
1897
1898         * codegen/argtypes.py:
1899         Map GSeekType to an int
1900
1901         * gio/gfileinfo.override:
1902         * gio/ginputstream.override:
1903         * gio/goutputstream.override:
1904         Add comments for missing API
1905
1906 2008-07-14  Johan Dahlin  <johan@gnome.org>
1907
1908         * gio/Makefile.am:
1909         * gio/gfile.override:
1910         * gio/ginputstream.override:
1911         * gio/gio.override:
1912         * gio/goutputstream.override:
1913         * gio/pygio-utils.c (pygio_check_cancellable):
1914         * gio/pygio-utils.h:
1915         Refactor cancellable check to a utility function, avoids
1916         plenty of code duplication.
1917
1918 2008-07-14  Paul Pogonyshev  <pogonyshev@gmx.net>
1919
1920         * codegen/definitions.py (ReturnType): New class.
1921         (MethodDefBase.__init__): Make 'self.ret' a 'ReturnType' instance,
1922         not string.  Accept 'optional' flag.
1923
1924         * codegen/argtypes.py (ArgMatcher.get_reverse_ret): Test if
1925         'ptype' has true 'optional' attribute and copy it to 'props' then.
1926
1927         * codegen/reversewrapper.py (ReturnType.support_optional): New
1928         class field, False by default.
1929         (GObjectReturn.support_optional, GObjectReturn.write_decl)
1930         (GObjectReturn.write_conversion): Support optional return.
1931
1932         * pygobject-2.0.pc.in: Add 'codegendir' variable.
1933         * codegen/pygtk-codegen-2.0.in: Make 'codegendir' refer to
1934         PyGObject's codegen, not PyGTK's one --- the latter will be
1935         removed (first part of bug #542821).
1936
1937 2008-07-08  Murray Cumming  <murrayc@murrayc.com>
1938
1939         * codegen/h2def.py: clean_func(): Strip GSEAL out, to avoid us
1940         thinking that there are many functions called GSEAL (merge from
1941         PyGTK).
1942
1943 2008-01-29  Olivier Crete  <tester@tester.ca>
1944
1945         * codegen/h2def.py (DefsWriter.__init__): Fix copy-paste
1946         typos (merge from PyGTK).
1947
1948 2008-07-11  Gian Mario Tagliaretti  <gianmt@gnome.org>
1949
1950         * gio/gfile.override: wrap File.load_contents, fix a typo.
1951
1952         * gio/gio.defs: Add docstring for File.load_contents.
1953
1954         * tests/test_gio.py: Add a test for the above method.
1955
1956 2008-07-09  Juha Sahakangas  <voas0113@saunalahti.fi>
1957
1958         * gobject/gobjectmodule.c (pyg_io_add_watch): Fix error message
1959         referencing wrong argument.
1960
1961 2008-06-29  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
1962
1963         * gobject/gobjectmodule.c (pyg_markup_escape_text): text_size
1964         should be Py_ssize_t instead of int.
1965         Bug 540696 – gobject.markup_escape_text() causes python to segfault.
1966
1967 2008-06-28  Johan Dahlin  <jdahlin@async.com.br>
1968
1969         * docs/reference/pygobject.xml:
1970         Document GObject.handler_block_by_func/handler_unblock_by_func
1971
1972 2008-06-17  Johan Dahlin  <jdahlin@async.com.br>
1973
1974         * gio/gio-types.defs:
1975         * tests/test_gio.py:
1976         Sort out confusion between interfaces and objects, add test.
1977         Fixes #538601
1978
1979 2008-06-09  Paul Pogonyshev  <pogonyshev@gmx.net>
1980
1981         * gobject/pygobject.c (pygobject_copy, pygobject_deepcopy): New
1982         functions, unconditionally raise TypeError.
1983         (pygobject_methods): Hook them up. (bug #482370)
1984
1985 2008-05-31  Johan Dahlin  <johan@gnome.org>
1986
1987     * setup.py: set FFI_LIBS to '', since this is mostly used on win32.
1988
1989 2008-05-30  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
1990
1991         * gobject/gobjectmodule.c (init_gobject): Call PyType_Ready for
1992         PyGParamSpec_Type, and add it to the module dict.
1993
1994 2008-05-23  Johan Dahlin  <jdahlin@async.com.br>
1995
1996         * gio/gio.defs:
1997         Add default values for all GSeekType variables.
1998
1999 2008-05-21  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2000
2001         * gobject/gobjectmodule.c (pyg_spawn_async): Accept None for the
2002         child_setup parameter of gobject.spawn_async().  Also check that
2003         it is callable.
2004
2005 2008-04-27  Paul Pogonyshev  <pogonyshev@gmx.net>
2006
2007         * gobject/pygenum.c (pyg_enum_richcompare): Fix: raise warning as
2008         exception if asked by PyErr_Warn().
2009
2010         * gobject/pygflags.c (pyg_flags_richcompare):  Don't return NULL
2011         after warning; more useful warning message.
2012
2013         (#480424, borrowing code by Mark Doffman)
2014
2015 2008-04-21  Johan Dahlin  <johan@gnome.org>
2016
2017         * codegen/h2def.py: Update link to defs format discussion
2018
2019 2008-04-15  Johan Dahlin  <johan@gnome.org>
2020
2021         * gobject/gobjectmodule.c (init_gobject): Set
2022         gobject.GObject.__module__ to gobject._gobject, this
2023         helps pylint to check public methods of GObject subclasses
2024
2025         * tests/Makefile.am (tests):
2026         * tests/test_gobject.py (TestGObjectAPI.testGObjectModule):
2027         Add a test for this
2028
2029         (#523821, Simon Schampijer)
2030
2031 2008-04-11  Johan Dahlin  <jdahlin@async.com.br>
2032
2033         * gio/gio.defs (write_async): document.
2034         Add default values to all flags parameters.
2035
2036 2008-04-11  Johan Dahlin  <johan@gnome.org>
2037
2038         * gio/gio.defs (read_async, read): document.
2039         Set io_priority default to G_PRIORITY_DEFAULT.
2040
2041 2008-04-11  Johan Dahlin  <jdahlin@async.com.br>
2042
2043         * gio/gfile.override:
2044         * gio/ginputstream.override:
2045         * gio/goutputstream.override:
2046         * tests/test_gio.py:
2047         Move around the order of the callback argument to async methods,
2048         so it comes before priority and cancellable, which can have default
2049         values.
2050
2051 2008-04-08  Johan Dahlin  <jdahlin@async.com.br>
2052
2053         * gio/Makefile.am:
2054         * gio/__init__.py:
2055         * gio/gappinfo.override:
2056         * gio/gio.defs:
2057         * gio/gio.override:
2058         * tests/test_gio.py:
2059         Implement GAppInfo constructor, add tests.
2060
2061 2008-04-08  Johan Dahlin  <jdahlin@async.com.br>
2062
2063         * gio/Makefile.am:
2064         * gio/gfileinfo.override:
2065         * gio/gio.defs:
2066         * gio/gio.override:
2067         * tests/test_gio.py:
2068         Wrap GFileInfo.list_attributes(), add tests and
2069         set the default of GFileQueryInfoFlags args to G_FILE_QUERY_INFO_NONE.
2070
2071 2008-04-08  Johan Dahlin  <jdahlin@async.com.br>
2072
2073         * gobject/option.py: Fix a typo
2074         * tests/test_option.py:
2075         Update the tests after the latest "refactoring".
2076         The testsuite should run fine now again, finally.
2077
2078 2008-04-08  Johan Dahlin  <johan@gnome.org>
2079
2080         * tests/test_gio.py (TestOutputStream.testWriteAsyncError):
2081         (TestInputStream._testCloseAsync.callback):
2082         Disable these tests until we can figure why they freeze during
2083         make check.
2084
2085 2008-04-08  Johan Dahlin  <jdahlin@async.com.br>
2086
2087         * gio/gio.defs:
2088         * gio/gio.override:
2089         * tests/test_gio.py:
2090         Add bindings for content_type_guess.
2091         Based on patch by Thomas Leonard (#525113)
2092
2093 2008-04-08  Johan Dahlin  <jdahlin@async.com.br>
2094
2095         * gio/gio-types.defs:
2096         * gio/gio.defs:
2097         * gio/gio.override:
2098         * tests/test_gio.py:
2099         Add basic support for GThemedIcon, based on patch by
2100         Thomas Leonard (#521883)
2101
2102 2008-04-08  Johan Dahlin  <jdahlin@async.com.br>
2103
2104         * gobject/pygsource.c:
2105         * tests/test_source.py:
2106         Unbreak Source.prepare (#523075, Bryan Silverthorn)
2107
2108 2008-04-08  Johan Dahlin  <johan@gnome.org>
2109
2110         * gio/gfile.override (_wrap__install_file_meta): Fix a couple of
2111         silly typos and use gio.File instead of GFile in exceptions.
2112
2113 2008-04-07  Johan Dahlin  <johan@gnome.org>
2114
2115         * gio/__init__.py:
2116         * gio/gfile.override:
2117         * gio/gio-types.defs:
2118         * gio/gio.override:
2119         * tests/test_gio.py:
2120         Make gio.File() (calling on an interface) a factory for creating
2121         files. Add tests and a docstring.
2122
2123 2008-04-07  Johan Dahlin  <johan@gnome.org>
2124
2125         * gio/Makefile.am (pygiodir): Install gio in the right location
2126
2127 2008-04-06  Johan Dahlin  <johan@gnome.org>
2128
2129         * tests/test_gio.py: Add tests for recently added features.
2130
2131         * gio/goutputstream.override:
2132         (_wrap_g_output_stream_write_asyn,_wrap_g_output_stream_close_async):
2133         * gio/ginputstream.override (async_result_callback_marshal_read):
2134         Add wrappers.
2135
2136         * gio/gio.override: Ignore vararg functions and remove a couple
2137         of left overs in the generic marshaller.
2138
2139         * gio/gio.defs: Remove g_file_output_stream_truncate,
2140         g_file_output_stream_tell and g_file_input_stream_tell
2141
2142         * Makefile.am:
2143         * gio/gfileenumerator.override (_wrap_g_file_enumerator_tp_iter):
2144         Implement the python iteration protocol on GFileEnumerator
2145
2146         * codegen/argtypes.py (arg): Add goffset to the int64 arg type
2147
2148 2008-04-02  Paul Pogonyshev  <pogonyshev@gmx.net>
2149
2150         * gobject/pygenum.c: bug #428732
2151         (pyg_enum_new): Fix two wrong assertions about '__enum_values__'
2152         size and contents.
2153         (pyg_enum_reduce): New function (based on patch by Phil Dumont).
2154         (pyg_enum_methods): Hook it up.
2155
2156 2008-03-24  Paul Pogonyshev  <pogonyshev@gmx.net>
2157
2158         * gobject/pygenum.c (pyg_enum_richcompare): Don't return NULL
2159         after warning; more useful warning message (bug #519631).
2160
2161 2008-03-22  Johan Dahlin  <johan@gnome.org>
2162
2163         * gio/ginputstream.override:
2164         * gio/gio.override:
2165         * tests/test_gio.py:
2166
2167         Make read_finish() return the string, remove the get_buffer method.
2168         This is more pythonic, as it mimics the normal read() behavior of
2169         python.
2170         Update the tests and use a separate marshaller for read.
2171
2172 2008-03-21  Johan Dahlin  <johan@gnome.org>
2173
2174         * gobject/__init__.py:
2175         * tests/test_properties.py:
2176         Allow gobject.property work with subclasses. Add tests.
2177
2178         (#523352, Tomeu Vizoso)
2179
2180 2008-03-10  Johan Dahlin  <johan@gnome.org>
2181
2182         * configure.ac: Require gio and giounix 2.15.7.
2183
2184 2008-03-09  Johan Dahlin  <johan@gnome.org>
2185
2186         * gio/gio-types.defs:
2187         * gio/gio.defs:
2188         * tests/test_gio.py:
2189         Update to SVN of gio:
2190         g_file_contains_file -> g_file_has_prefix
2191         can_seek and can_truncate are now only on the GSeekable interface
2192         Add tests
2193
2194         (#521207, Thomas Leonard)
2195
2196 2008-03-08  Johan Dahlin  <jdahlin@async.com.br>
2197
2198         * gio/ginputstream.override:
2199         Pass in l instead of i to PyArg_ParseTupleAndKeywords when
2200         parsing a long. Fixes the build on 64-bit systems.
2201         (#521165, Thomas Leonard)
2202
2203 2008-03-02  Johan Dahlin  <johan@gnome.org>
2204
2205         * Makefile.am: Dist .m4 files.
2206         (#496011, Ed Catmur)
2207
2208 2008-03-02  Paul Pogonyshev  <pogonyshev@gmx.net>
2209
2210         * gobject/gobjectmodule.c (REGISTER_TYPE): Never override customly
2211         set 'tp_new' and 'tp_alloc'.
2212
2213 2008-02-01  Dan Winship  <danw@gnome.org>
2214
2215         * pygobject-2.0.pc.in (defsdir): Add this so other bindings can
2216         find gio.defs
2217
2218 2008-01-21  Johan Dahlin  <johan@gnome.org>
2219
2220         * gio/gio.override (async_result_callback_marshal):
2221         Don't assume the buffer is set, use Py_XINCREF instead of Py_INCREF.
2222
2223         * gio/Makefile.am:
2224         * gio/ginputstream.override:
2225         * gio/goutputstream.override:
2226         * gio/gvolumemonitor.override:
2227         * gio/gfile.override:
2228         * tests/test_gio.py:
2229         Implement and test GFile.read_async. Use try/finally to always quit
2230         the mainloop, even if the test fail.
2231         Update source comment headers.
2232
2233 2008-01-20  Johan Dahlin  <johan@gnome.org>
2234
2235         * tests/test_gio.py (TestVolumeMonitor): New test
2236
2237         * gio/Makefile.am:
2238         * gio/ginputstream.override:
2239         * gio/gio.override:
2240         * gio/giomodule.c:
2241         * gio/goutputstream.override:
2242         * gio/gvolumemonitor.override:
2243         * gio/unix.override:
2244         * gio/unixmodule.c:
2245
2246         Split out overrides into more files. Fix up module description in
2247         comments
2248
2249 2008-01-20  Johan Dahlin  <johan@gnome.org>
2250
2251         * gio/gio.override (_wrap_g_simple_async_result_get_buffer): Add
2252         a new method, to fetch the buffer
2253         (_wrap_g_input_stream_read_async): Save a reference to the buffer.
2254         * tests/test_gio.py (TestInputStream.testReadAsync.callback):
2255         Check the content
2256
2257         * tests/test_gio.py (TestInputStream.testReadAsyncError):
2258         New function to test error condition of async read.
2259
2260         * gio/gio.override (async_result_callback_marshal): Grab a reference
2261         to callback/data.
2262
2263 2008-01-19  Johan Dahlin  <johan@gnome.org>
2264
2265         * gio/gio.override (_wrap_g_output_stream_write): Impl.
2266         * gio/gio.override:
2267         * gio/unix.defs:
2268         Add GUnixInputStream type and methods
2269
2270         * tests/common.py:
2271         * tests/test_gio.py:
2272         Add GIO tests.
2273
2274         * gio/gio.override (_wrap_g_app_info_get_all_for_type),
2275         (_wrap_g_app_info_get_all),
2276         (_wrap_g_drive_get_volumes): Implement.
2277
2278         * gio/gio.override (async_result_callback_marshal): New marshaller
2279         for async results
2280         (_wrap_g_input_stream_read_async): Impl.
2281         * gio/gio-types.defs: Add SimpleAsyncRequest
2282         * gio/giomodule.c: Register enums/constants
2283
2284         * gio/gio.override: Fix a silly bug so it possible to read files
2285         larger than 8192 bytes.
2286
2287         * gio/gio.defs: Set null-ok for all cancelable as well.
2288
2289         * gio/__init__.py: set gio.unix to None if it's not available
2290
2291         * gio/gio.override: Implement InputStream.read efficiently without
2292         copying the strings, based on the standard libararys file.read()
2293         implementation.
2294
2295         * gio/gio-types.defs (Cancellable): Add wrapper.
2296
2297         * gio/gio.defs (replace): Do not require cancellable argument
2298         to be specified, default to NULL if not.
2299
2300         * Makefile.am:
2301         * codegen/Makefile.am:
2302         * codegen/README.defs:
2303         * codegen/__init__.py:
2304         * codegen/argtypes.py:
2305         * codegen/code-coverage.py:
2306         * codegen/codegen.py:
2307         * codegen/createdefs.py:
2308         * codegen/definitions.py:
2309         * codegen/defsconvert.py:
2310         * codegen/defsgen.py:
2311         * codegen/defsparser.py:
2312         * codegen/docextract.py:
2313         * codegen/docextract_to_xml.py:
2314         * codegen/docgen.py:
2315         * codegen/h2def.py:
2316         * codegen/mergedefs.py:
2317         * codegen/missingdefs.py:
2318         * codegen/mkskel.py:
2319         * codegen/override.py:
2320         * codegen/pygtk-codegen-2.0.in:
2321         * codegen/reversewrapper.py:
2322         * codegen/scanvirtuals.py:
2323         * codegen/scmexpr.py:
2324
2325         * configure.ac:
2326         * gio/Makefile.am:
2327         * gio/__init__.py:
2328         * gio/gio-types.defs:
2329         * gio/gio.defs:
2330         * gio/gio.override:
2331         * gio/giomodule.c: (init_gio):
2332         * gio/unix-types.defs:
2333         * gio/unix.defs:
2334         * gio/unix.override:
2335         * gio/unixmodule.c: (initunix):
2336
2337         Import codegen from pygtk.
2338         Add initial gio and gio.unix bindings.
2339
2340 2008-01-11  Johan Dahlin  <johan@gnome.org>
2341
2342         * configure.ac: Don't link against libffi if we cannot find libffi
2343         on the system. (#496006, Ed Catmur)
2344
2345 2008-01-03  Johan Dahlin  <johan@gnome.org>
2346
2347         Reviewed by: Gustavo
2348
2349         * configure.ac:
2350         * gobject/pygmainloop.c (pyg_signal_watch_prepare): Optinally
2351         use PySignal_SetWakeupFd to avoid having to do a timeout to find
2352         out if there are any pending signals from python.
2353         Fixes #481569
2354
2355         * configure.ac (CPPFLAGS):
2356         Include -Wall and -Werror when checking for PySignal_SetWakeupFd
2357
2358 2008-01-02  Sebastian Rittau  <srittau@jroger.in-berlin.de>
2359
2360         * gobject/gobjectmodule.c
2361         * gobject/gobjectmodule.c (pyg_get_application_name)
2362         (pyg_get_prgname): Add wrappers for g_get_application_name and
2363         g_get_prgname.
2364
2365 2007-11-30  Rafael Villar Burke  <pachi@rvburke.com>
2366
2367         * docs/reference/pygobject.xml: Add props attribute
2368
2369 2007-11-24  Paolo Borelli  <pborelli@katamail.com>
2370
2371         * gobject/gobjectmodule.c (pyg_type_register): check for NULL before
2372         dereferencing.
2373
2374 2007-11-24  Paolo Borelli  <pborelli@katamail.com>
2375
2376         * gobject/gobjectmodule.c (pyg_type_register): do not use a
2377         potentially uninitialized variable. Bug #499334.
2378
2379 2007-11-12  Johan Dahlin  <johan@gnome.org>
2380
2381         * gobject/option.py (OptionParser.parse_args):
2382         Set the default value of old_args to 0, so we don't end
2383         up slicing with None. Fixes #496278 (Vincent Untz)
2384
2385 2007-11-06  Johan Dahlin  <johan@gnome.org>
2386
2387         * gobject/option.py (OptionParser.parse_args): Merge in values
2388         from all groups to the global option group. Slice up args
2389         so it doesn't return too much.
2390
2391         * tests/test_option.py: Refactor to be unittesty,
2392         Add new tests to test what options returns.
2393
2394 2007-11-05  Johan Dahlin  <johan@gnome.org>
2395
2396         * gobject/pygobject.h:
2397         * gobject/gobjectmodule.c:
2398         Add pyg_option_group_new to the public API
2399
2400         * configure.ac: Branch, bump version to 2.15.0.
2401
2402 2007-10-16  Damien Carbery   <damien.carbery@sun.com>
2403
2404         reviewed by: Johan Dahlin.
2405
2406         * pygobject-2.0-uninstalled.pc.in: uninstalled.pc file missing
2407         'datadir' value. Fixes #486876.
2408
2409 2007-09-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2410
2411         * configure.ac: Post-relase version bump.
2412
2413 === 2.14.0 ===
2414 2007-09-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2415
2416         * configure.ac: Bump version to 2.14.0.
2417
2418         * NEWS: Update NEWS for next release.
2419
2420 2007-09-06  John Finlay  <finlay@moeraki.com>
2421
2422         * docs/xsl/fixxref.py.in: Remove DATADIR substitution since it now
2423         gets substituted as ${prefix}/share which doesn't work in a Python
2424         script.
2425
2426 2007-08-27  Johan Dahlin  <jdahlin@async.com.br>
2427
2428         * gobject/propertyhelper.py (property.__metaclass__.__repr__): Avoid
2429         exporting the metaclass, just define it where it will be used.
2430
2431         * gobject/__init__.py (GObjectMeta._install_properties):
2432         Refactor a bit to make sure that it is possible to use in subclasses,
2433         fixes #470718 (Marco Giusti)
2434
2435 2007-08-27   Marco Giusti  <marco.giusti@gmail.com>
2436
2437         reviewed by: Gustavo J. A. M. Carneiro
2438
2439         * gobject/propertyhelper.py:
2440         * tests/test_properties.py:
2441         Bug 470230 – check for default value in boolean type is wrong.
2442
2443 2007-08-27  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2444
2445         * tests/Makefile.am,
2446         * gobject/Makefile.am: Remove -D_XOPEN_SOURCE=600
2447         -D__EXTENSIONS__, no longer needed.
2448
2449         * configure.ac: Don't add -std=c9x CFLAG on Solaris.  Fixes
2450         #339924 again.
2451
2452         * gobject/pygtype.c (pyg_type_wrapper_repr): Typecast self->type
2453         to (unsigned long int) to fix a compilation warning.
2454
2455 2007-08-14   Ed Catmur   <ed@catmur.co.uk>
2456
2457         reviewed by: Gustavo J. A. M. Carneiro
2458
2459         * gobject/pygobject.c (pygobject_new_full, pygobject_clear),
2460         (pygobject_get_dict): Bug 466082 – pygobject_new_full not fully
2461         initialising PyGObject, chaos results.
2462
2463 2007-08-13  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2464
2465         * tests/test_subtype.py (TestSubType.testGetDict): Add unit test
2466         exercising a bug when GObject.__dict__ is accessed directly.
2467
2468 2007-07-08  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2469
2470         * gobject/gobjectmodule.c (pygobject_functions)
2471         (pyg_timeout_add_seconds): Wrap g_timeout_add_seconds,
2472         conditionally compiled if glib version >= 2.13.5.
2473
2474 2007-07-08   Johannes Hölzl   <johannes.hoelzl@gmx.de>
2475
2476         reviewed by: Gustavo Carneiro
2477
2478         * gobject/gobjectmodule.c (build_gerror, init_gobject): Work
2479         around the deprecation warning of BaseException.message in Python
2480         2.6+ affecting GError exceptions.  Fixes #342948.
2481
2482 2007-07-07  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2483
2484         * configure.ac: Post-release version bump.
2485
2486 === 2.13.2 ===
2487 2007-07-07  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2488
2489         * NEWS: Update.
2490
2491 2007-07-07  Damien Carbery   <damien.carbery@sun.com>
2492
2493         reviewed by: Gustavo Carneiro.
2494
2495         * configure.ac: Bug 339924 – pygobject doesn't compile on opensolaris.
2496
2497 2007-04-30  Johannes Hölzl  <johannes.hoelzl@gmx.de>
2498
2499         * gobject/gobjectmodule.c (init_gobjectmodule),
2500         * gobject/pygoptiongroup.c (arg_func),
2501         * gobject/option.py (OptionParser._parse_args, OptionGroup._to_goptiongroup),
2502         * tests/test_option.py: OptParse-Exceptions in GOption-callbacks
2503         are now convertet into an GError.  GError from the
2504         GOptionGroup.run is convertet into an OptParse-Exception.
2505         Fixes #342948.
2506
2507 2007-07-06  Ed Catmur  <ed@catmur.co.uk>
2508
2509         * gobject/pygtype.c (pyg_param_gvalue_from_pyobject),
2510         (pyg_param_gvalue_as_pyobject): Applied patch from Ed Catmur to
2511         support G_TYPE_VALUE boxed args/signals, and add a test, Fixes
2512         #351072
2513
2514 2007-07-06  Carlos Martin  <inean@users.sf.net>
2515
2516         * tests/test_gtype.py:
2517         * tests/testhelpermodule.c: add test for #351072
2518
2519 2007-07-04  Murray Cumming  <murrayc@murrayc.com>
2520
2521         * gobject/pygobject.c: (pygobject_switch_to_toggle_ref):
2522         * gobject/pygobject.h: Rename the private struct field to
2523         private_flags, because private is a C++ keyword, so this broke
2524         builds of some C++ applications, such as Glom.
2525
2526 2007-07-02  Sebastian Granjoux  <seb.sfo@free.fr>
2527
2528         reviewed by: Johan Dahlin
2529
2530         * gobject/gobjectmodule.c: (pyg_gerror_exception_check):
2531         * tests/test_gtype.py:
2532         * tests/testhelpermodule.c: (_wrap_test_gerror_exception):
2533
2534         Fix a bug in pyg_error_exception_check, add a test, Fixes #449879
2535
2536 2007-06-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2537
2538         * gobject/pygobject.h: Add a flags field to PyGObject; uses
2539         structure space formerly occupied by the now stale "GSList
2540         *closures" field.
2541
2542         * gobject/pygobject.c (pygobject_switch_to_toggle_ref): Do nothing
2543         if the wrapper is already in toggle reference mode.  Closes #447271.
2544
2545         * tests/test_subtype.py: Test case for #447271.
2546
2547 2007-06-17  Sebastien Bacher  <seb128@ubuntu.com>
2548
2549         * m4/python.m4: use python-config to get python includes
2550           (Closes #448173)
2551
2552 2007-06-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2553
2554         * gobject/propertyhelper.py,
2555         * tests/test_properties.py: Support type=GObject or
2556         type=TYPE_OBJECT in the new properties API.
2557
2558 2007-06-06  Yevgen Muntyan  <muntyan@tamu.edu>
2559
2560         OK'd by Johan
2561
2562         * gobject/generate-constants.c: Return 0 from main().
2563
2564         * gobject/Makefile.am: use generate-constants$(EXEEXT) instead
2565         of generate-constants in the constants.py target rule.
2566
2567 2007-05-30  Yevgen Muntyan  <muntyan@tamu.edu>
2568
2569         reviewed by: Gustavo Carneiro
2570
2571         * autogen.sh: Allow running autogen.sh from outside $srcdir.
2572
2573 2007-05-09  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2574
2575         * tests/Makefile.am (INCLUDES): Idem.
2576
2577         * gobject/Makefile.am (INCLUDES): Add -D_XOPEN_SOURCE=600 and
2578         -D__EXTENSIONS__ to make it compile with c99 and Sun C compiler.
2579
2580         Fixes #339924: gnome-python doesn't compile on opensolaris.
2581
2582 2007-05-02  Johan Dahlin  <jdahlin@async.com.br>
2583
2584         * configure.ac: Post-release version bump.
2585
2586 === 2.13.1 ===
2587 2007-05-02  Johan Dahlin  <jdahlin@async.com.br>
2588
2589         * pygobject-2.0-uninstalled.pc.in: Add libdir.
2590         Fixes #435132 (Luca Ferretti)
2591
2592 2007-05-01  Johan Dahlin  <johan@gnome.org>
2593
2594         * gobject/propertyhelper.py:
2595         * tests/test_properties.py:
2596
2597         Store property values in the descriptor per instance, add a test.
2598
2599         * examples/properties.py:
2600         * gobject/Makefile.am:
2601         * gobject/__init__.py:
2602         * gobject/constants.py.in:
2603         * gobject/generate-constants.c: (main):
2604         * gobject/propertyhelper.py:
2605         * tests/Makefile.am:
2606         * tests/test_enum.py:
2607         * tests/test_interface.py:
2608         * tests/test_properties.py:
2609
2610         Add a property helper, fixes #338098
2611
2612 2007-04-30  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>
2613
2614         * tests/common.py (importModules): Import testhelper first so that
2615         g_thread_init is called before init_pygobject.
2616
2617         * tests/testhelpermodule.c (inittesthelper): Call g_thread_init
2618         before init_pygobject.
2619
2620         * tests/test_subtype.py (TestSubType.testDescriptor): Unit test
2621         for the bug below.
2622
2623         * gobject/pygobject.c (pygobject_setattro): Account for the case
2624         when attribute setting doesn't actually create an instance
2625         dictionary, in which case pygobject_switch_to_toggle_ref would be
2626         called twice, thereby causing gobject error.
2627         Fixes #434659
2628
2629 2007-04-29  James Livingstone  <doclivingstone@gmail.com>
2630
2631         reviewed by: Johan Dahlin  <johan@gnome.org>
2632
2633         * gobject/pygtype.c: (pyg_value_from_pyobject):
2634         * tests/test_signal.py:
2635
2636         Add a missing else to avoid throwing a TypeError.
2637         Includes a test written by Ed Catmur.
2638         Fixes #374653
2639
2640 2007-04-29  Johan Dahlin  <johan@gnome.org>
2641
2642         * gobject/pygtype.c: (pyg_value_array_from_pyobject):
2643         * tests/test_gtype.py:
2644         * tests/testhelpermodule.c: (_wrap_test_value_array):
2645
2646         Treat None in a GValueArray as pointer/NULL, patch by
2647         Ed Catmur, fixes #352209.
2648
2649 2007-04-29  Loïc Minier  <lool+gnome@via.ecp.fr>
2650
2651         reviewed by: Johan Dahlin  <johan@gnome.org>
2652
2653         * autogen.sh:
2654
2655         Use dirname $0 instead of pwd to compute srcdir in autogen,
2656         fixes #409234
2657
2658 2007-04-29  Damien Carbery <damien.carbery@sun.com>
2659
2660         reviewed by: Johan Dahlin  <johan@gnome.org>
2661
2662         * tests/test-unknown.c: (test_interface_iface_method):
2663
2664         Do not return in a void function, fixes #385127
2665
2666 2007-04-29  Johan Dahlin  <johan@gnome.org>
2667
2668         * gobject/pygflags.c: (pyg_flags_from_gtype):
2669         Fix leak, patch by Daniel Berrange. Fixes #428726 (Phil Dumont)
2670
2671 2007-04-29  Damien Carbery <damien.carbery@sun.com>
2672
2673         reviewed by: Johan Dahlin  <johan@gnome.org>
2674
2675         * configure.ac:
2676         * pygobject-2.0-uninstalled.pc.in:
2677
2678         Add an uninstalled pkg-config file, fixes #385129
2679
2680 2007-04-29  Johan Dahlin  <johan@gnome.org>
2681
2682         * README:
2683         * configure.ac:
2684         * gobject/Makefile.am:
2685         * gobject/ffi-marshaller.c: (g_value_to_ffi_type),
2686         (g_value_from_ffi_type), (g_cclosure_marshal_generic_ffi):
2687         * gobject/ffi-marshaller.h:
2688         * gobject/gobjectmodule.c: (create_signal), (init_gobject):
2689         * pygobject-2.0.pc.in:
2690         * tests/test_signal.py:
2691         * tests/testhelpermodule.c: (test1_callback),
2692         (test1_callback_swapped), (test2_callback), (test3_callback),
2693         (test4_callback), (test_float_callback), (test_double_callback),
2694         (test_string_callback), (test_object_callback), (connectcallbacks),
2695         (_wrap_connectcallbacks), (inittesthelper):
2696
2697         Add a generic CClosure marshaller based on ffi.
2698         This makes it possible to connect to signals on PyGObjects from C.
2699         libffi is now an optional dependency
2700         Fixes #353816 (Edward Hervey)
2701
2702 2007-04-23  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>
2703
2704         * configure.ac: Post-release version bump.
2705
2706 === 2.13.0 ===
2707 2007-04-23  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>
2708
2709         * configure.ac: Bump version to 2.13.0.
2710
2711         * tests/test_properties.py (TestProperties.testMulti): Unit test
2712         for get/set_properties.
2713
2714 2007-04-23  Gian Mario Tagliaretti  <gianmt@gnome.org>
2715
2716         * gobject/pygobject.c: Implemented pygobject_set_properties and
2717         pygobject_get_properties in order to set multiple properties using
2718         keyword arguments. Fixes 403212
2719
2720         * docs/reference/pygobject.xml: Docs for the above new methods.
2721
2722 2007-04-14  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2723
2724         * gobject/gobjectmodule.c, gobject/pygobject.h: Add a new
2725         pyg_gerror_exception_check API.  Fixes #425242.
2726
2727         * gobject/gobjectmodule.c (pyg_set_application_name)
2728         (pyg_set_prgname): Add wrappers for g_set_application_name and
2729         g_set_prgname.  Patch by Havoc Pennington.  Fixes #415853.
2730
2731         * gobject/pygobject.h: Bug #419379: Modernize init_pygobject: use
2732         static inline functions instead of macros.
2733
2734         * gobject/gobjectmodule.c (init_gobject):
2735         * gobject/pygobject-private.h:
2736         * gobject/pygobject.c (pygobject_data_free, pygobject_data_new),
2737         (pygobject_get_inst_data, pyg_toggle_notify),
2738         (pygobject_switch_to_toggle_ref),
2739         (pygobject_register_wrapper_full, pygobject_register_wrapper),
2740         (pygobject_new_full, pygobject_unwatch_closure),
2741         (pygobject_watch_closure, pygobject_dealloc, pygobject_repr),
2742         (pygobject_traverse, pygobject_clear, pygobject_weak_ref),
2743         (pygobject_setattro, pygobject_weak_ref_traverse),
2744         (pygobject_weak_ref_notify, pygobject_weak_ref_clear),
2745         (pygobject_weak_ref_dealloc, pygobject_weak_ref_new),
2746         (pygobject_weak_ref_unref, pygobject_weak_ref_call):
2747         * gobject/pygobject.h:
2748         * gobject/pygtype.c (gclosure_from_pyfunc):
2749         * tests/test_subtype.py:
2750         Bug #320428: Break PyGObject<->GObject reference cycle (patch
2751         v7.1; thanks John Ehresman for the help with this patch).
2752
2753 2007-03-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2754
2755         * gobject/pygobject.c (pygobject_emit): Fix %ld vs int warning.
2756         (pygobject_chain_from_overridden): Idem.
2757
2758 2007-03-06  Richard Hult  <richard@imendio.com>
2759
2760         * configure.ac: Fix the docs option so that it's possible to disable
2761         building the docs.
2762
2763 2007-03-03  Edward Hervey  <edward@fluendo.com>
2764
2765         * gobject/pygobject.c: (set_property_from_pspec):
2766         Release the GIL when calling g_object_set_property, since setting a
2767         property might trigger some code that might come back in python land.
2768         Fixes #395048
2769
2770 2007-01-09  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2771
2772         * configure.ac:  Turn the option --disable-docs into --enable-docs.
2773         * docs/Makefile.am:  Tread --enable-docs like --enable-gtk-doc in
2774         gtk+, i.e. do not ever build docs unless requested, but always
2775         install them if they are found already built.
2776
2777 2006-12-14  Kjartan Maraas  <kmaraas@gnome.org>
2778
2779         * autogen.sh: Make this work with automake 1.10 too.
2780
2781 2006-11-18  Johan Dahlin  <jdahlin@async.com.br>
2782
2783         * configure.ac: Post release version bump
2784
2785 === 2.12.3 ===
2786 2006-11-18  Johan Dahlin  <jdahlin@async.com.br>
2787
2788         * NEWS: Update
2789
2790         * gobject/pygoptiongroup.c (pyg_option_group_dealloc):
2791         * tests/test_option.py (TestOption.testBadConstructor):
2792         Make sure an exception is raised when we pass in invalid arguments
2793         to the optiongroup constructor, add a test. #364576 (Laszlo Pandy)
2794
2795         * gobject/pygobject.c (pygobject_register_class): set __module__ on
2796         gobject derived types, fixes #376099 (Osmo Salomaa)
2797
2798 2006-11-18  Yevgen Muntyan  <muntyan@tamu.edu>
2799
2800         reviewed by: Johan Dahlin  <johan@gnome.org>
2801
2802         * gobject/gobjectmodule.c: (create_property):
2803         * gobject/pygparamspec.c: (pyg_param_spec_getattr):
2804         * tests/test_properties.py:
2805
2806         Avoid truncating in pyg_param_spec_getattr, add test for all non-float
2807         numeric types. Fixes #353943
2808
2809 2006-11-18  Johan Dahlin  <jdahlin@async.com.br>
2810
2811         * gobject/pygtype.c (gclosure_from_pyfunc): Use PyObject_Cmp instead
2812         of comparing function closure addresses, which makes it possible
2813         to use any callable and not just functions.
2814         Fixes #375589 (Dima)
2815
2816 2006-10-13  John Finlay  <finlay@moeraki.com>
2817
2818         * docs/Makefile.am (HTML_FILES): Remove
2819         html/pygobject-reference-copyright.html.
2820         Fixes #361906 (Marc-Andre Lureau)
2821
2822 2006-10-11  John Finlay  <finlay@moeraki.com>
2823
2824         * docs/reference/pygobject-introduction.xml: Remove Copyright and
2825         License section.
2826
2827         * docs/reference/pygobject-ref.xml: Remove author info
2828
2829 2006-10-05  Cedric Gustin  <cedric.gustin@gmail.com>
2830
2831         * dsextras.py (Template) (TemplateExtension): Add
2832         py_ssize_t_clean flag to be passed to codegen.SourceWriter.
2833
2834 2006-10-04  Cedric Gustin  <cedric.gustin@gmail.com>
2835
2836         * Makefile.am: Add pygobject_postinstall.py to EXTRA_DIST.
2837
2838 2006-10-03  Johan Dahlin  <jdahlin@async.com.br>
2839
2840         * configure.ac: Post release version bump
2841
2842 === 2.12.2 ===
2843 2006-10-03  Johan Dahlin  <jdahlin@async.com.br>
2844
2845         * NEWS:
2846         * configure.ac: 2.12.2
2847
2848 2006-10-03  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2849
2850         * gobject/Makefile.am:
2851         * gobject/gobjectmodule.c: (add_signals), (add_properties),
2852         (pyg_signal_new), (pyg_object_new), (get_handler_priority),
2853         (pyg_io_add_watch), (pyg_spawn_async), (pyg_add_emission_hook),
2854         (pyg_remove_emission_hook), (pyg_filename_from_utf8),
2855         (_pyg_strv_to_gvalue):
2856         * gobject/pygiochannel.c: (py_io_channel_write_chars),
2857         (py_io_channel_write_lines):
2858         * gobject/pygobject-private.h:
2859         * gobject/pygobject.c: (PyGProps_length), (pygobject_init),
2860         (pygobject_connect), (pygobject_connect_after),
2861         (pygobject_connect_object), (pygobject_connect_object_after),
2862         (pygobject_disconnect), (pygobject_handler_is_connected),
2863         (pygobject_handler_block), (pygobject_handler_unblock),
2864         (pygobject_emit), (pygobject_chain_from_overridden):
2865         * gobject/pygoptioncontext.c: (pyg_option_context_parse):
2866         * gobject/pygtype.c: (pyg_value_from_pyobject):
2867
2868         Python 2.5 and 64 bits fixes (Py_ssize_t), closes bug #338487.
2869
2870         * gobject/pygenum.c (pyg_enum_repr): Const warning fix.
2871
2872 2006-09-29  Johan Dahlin  <jdahlin@async.com.br>
2873
2874         * pygtk.py: LGPL, not GPL header
2875
2876 2006-09-24  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2877
2878         * gobject/pygobject.h (init_pygobject_check): Add parentheses
2879         "around && within ||" to please gcc.
2880
2881 2006-09-21  Cedric Gustin  <cedric.gustin@gmail.com>
2882
2883         * dsextras.py: Catch ImportError exception when codegen is not
2884         available: disable Template and TemplateExtension, redirect the
2885         user to the pygtk installer and raise a NameError
2886         exception. check_date has also been rewritten and now uses
2887         distutils.dep_util.newer_group(). defs files can also be built
2888         using createdefs by passing tuples as keyword argument to Template
2889         (see for example the gdk and gtk templates in setup.py).
2890         * setup.py: Changed the way the VERSION macro is defined on win32.
2891         Also install the html reference documentation, the xsl files and
2892         fixxref.
2893         * pygobject_postinstall.py: Set the value of DATADIR in
2894         fixxref.py. Add functions to install shortcuts in the Start menu
2895         to the reference manual (currently disabled: see bug #353849).
2896
2897 2006-09-16  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2898
2899         * tests/test_signal.py (TestEmissionHook.testCallbackReturnFalse)
2900         (TestEmissionHook.testCallbackReturnTrue)
2901         (TestEmissionHook.testCallbackReturnTrueButRemove): Add a few more
2902         emission hook tests.
2903
2904         * gobject/gobjectmodule.c (pyg_add_emission_hook): One too many
2905         DECREF on 'extra_args'.
2906
2907 2006-09-12  John Ehresman  <jpe@wingware.com>
2908
2909         * gobject/pygobject.h (init_pygobject_check): Declare variables
2910         at start of code block
2911
2912 2006-09-06  Johan Dahlin  <jdahlin@async.com.br>
2913
2914         * gobject/pygmainloop.c (pyg_signal_watch_prepare): Increase the timeout
2915         to 1000ms instead of 100.
2916
2917 === 2.12.1 ===
2918 2006-09-04  Johan Dahlin  <jdahlin@async.com.br>
2919
2920         * gobject/pygobject.h (_PYGOBJECT_H_): Corrected version check,
2921         (Sebastian Dröge, #354364)
2922
2923         * configure.ac: Post release version bump
2924
2925 === 2.12.0 ===
2926 2006-09-04  Johan Dahlin  <jdahlin@async.com.br>
2927
2928         * NEWS:
2929         * configure.ac: 2.12.0
2930
2931 2006-08-28  Johan Dahlin  <jdahlin@async.com.br>
2932
2933         * docs/Makefile.am: Install html files regardless even when passing
2934         in --disable-docs, fixes #353159 (Matthias Clasen)
2935
2936 2006-08-27  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2937
2938         * configure.ac: Post-release version bump.
2939
2940 === 2.11.4 ===
2941 2006-08-27  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2942
2943         * NEWS: Update.
2944
2945         * gobject/gobjectmodule.c (pyg_type_register): Correct a bug in
2946         the code that checks if parent already implements an interface or not.
2947
2948         * tests/test-unknown.c (test_interface_base_init),
2949         (test_interface_get_type): Add a property to the interface, for
2950         better testing.
2951         (test_unknown_get_property),
2952         (test_unknown_set_property, test_unknown_class_init): Add a
2953         property to the class as required by the interface.
2954
2955         * tests/test_interface.py: More thorough interface testing, with
2956         properties and test both the case of implementing an interface
2957         from scratch, and re-implementing and interface that a parent
2958         already implements.
2959
2960 2006-08-27  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2961
2962         * gobject/gobjectmodule.c (pygobject__g_instance_init): If
2963         necessary, attach the GObject to the PyGObject here.
2964         (pygobject_constructv): Cope with the fact that wrapper->obj may
2965         have already been set due to the change above.
2966
2967         * tests/test_signal.py: Add test case fixed by the changes above,
2968         basically calling self.emit() inside do_set_property called
2969         implicitly by the constructor due to a CONSTRUCT property.
2970
2971         Fixes bug 353039: "Failure in signal emission during
2972         do_set_property invoked from constructor".
2973
2974 2006-08-26  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
2975
2976         * gobject/gobjectmodule.c (pyg_type_register): Fix type
2977         registration once more to account for all corner cases.  This time
2978         we register interfaces in two stages: first, before properties and
2979         signals are registered, we register the interfaces that are
2980         already implemented in the parent type and are being overridden;
2981         second, after registration of properties and signals, we register
2982         the remaining interfaces.
2983
2984 2006-08-21  Johan Dahlin  <jdahlin@async.com.br>
2985
2986         * docs/Makefile.am (EXTRA_DIST): Remove build_stamp, include generated .html
2987         in the distributed tarball. Remove builddate.xml, reference directory and fixxref.py
2988         dependencies to avoid regenerating the tarball when it's not needed.
2989
2990         * configure.ac: Post release version bump
2991
2992 === 2.11.3 ===
2993 2006-08-21  Johan Dahlin  <jdahlin@async.com.br>
2994
2995         * NEWS: Update
2996
2997         * Makefile.am:
2998         * docs/Makefile.am:
2999         Always install the xsl files & css files, regardless if the
3000         documentation was actually built or not. Also clean it up considerably.
3001
3002 2006-08-17  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
3003
3004         * gobject/gobjectmodule.c (pyg_type_register): Move the interface
3005         registration code up, to run before properties and signals
3006         registration, because glib doesn't allow us to add interfaces
3007         after the first call to g_class_ref.
3008
3009 2006-08-16  John Finlay  <finlay@moeraki.com>
3010
3011         * docs/reference/pygobject-functions.xml: Update docs for
3012         gobject functions.
3013
3014 2006-08-15  Murray Cumming  <murrayc@murrayc.com>
3015
3016         * gobject/pygobject-private.h:
3017         * gobject/pygobject.h:
3018         Replace uses of typename with type_name, because that is a
3019         reserved C++ keyword. This was breaking compilation of Glom
3020         due its use in the new type_register_custom function pointer in
3021         pygobject.h.
3022
3023 2006-08-12  John Finlay  <finlay@moeraki.com>
3024
3025         * pygobject-2.0.pc.in: Add reference to installed pygobject docs
3026         * docs/Makefile.am: Add install of style.css
3027         * docs/xsl/html.xsl: Define stylesheet as style.css
3028         * docs/style.css: Add.
3029
3030 2006-08-10  John Finlay  <finlay@moeraki.com>
3031
3032         * docs/reference/entities.docbook.in:
3033         * docs/reference/pygobject-ref.xml:
3034         * docs/Makefile.am:
3035         * configure.ac:
3036         Use builddate.xml for the builddate entity and have builddate.xml be
3037         updated when the docs are built not during configure time.
3038
3039 2006-08-08  Johan Dahlin  <jdahlin@async.com.br>
3040
3041         * configure.ac:  Post release version bump.
3042
3043 === 2.11.2 ===
3044 2006-08-08  Johan Dahlin  <jdahlin@async.com.br>
3045
3046         * NEWS: Update
3047
3048 2006-08-07  Johan Dahlin  <jdahlin@async.com.br>
3049
3050         * docs/Makefile.am ($(HTML_DATA)): Fix parallel build
3051         (#350225, Ed Catmur)
3052
3053 2006-08-06  Johan Dahlin  <johan@gnome.org>
3054
3055         * m4/as-expand.m4: New file to workaround automake silliness
3056
3057         * docs/xsl/fixxref.py.in: New script
3058
3059         * docs/Makefile.am (XSLFILES): Add fixxref.py script, moved in from
3060         PyGTK.
3061
3062         * docs/xsl/html.xsl: Do not use shade.verbatim, set the background
3063         color and border as a normal html tag to avoid an external
3064         stylesheet.
3065
3066 2006-08-04  Johan Dahlin  <jdahlin@async.com.br>
3067
3068         * configure.ac: Post release version bump
3069
3070 === 2.11.1 ===
3071 2006-08-04  Johan Dahlin  <jdahlin@async.com.br>
3072
3073         * NEWS: Update
3074
3075         * README: Update, some s/PyGTK/PyGObject/
3076
3077         * configure.ac:
3078         * docs/Makefile.am:
3079         * docs/reference/.cvsignore:
3080         * docs/reference/entities.docbook.in:
3081         * docs/reference/pygobject-ref.xml:
3082         Clean up the build date/version mess I created.
3083         Now it's created during configure time and properly included in
3084         the docbook files. Also make sure distcheck passes
3085
3086 2006-08-04  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
3087
3088         * configure.in: Add hack to disable libtool checking for g++ and
3089         g77 (copied from libglade).
3090
3091 2006-07-29  John Finlay  <finlay@moeraki.com>
3092
3093         * gobject/pygobject.h (pyg_param_gvalue_from_pyobject): Fix define
3094         to point to the correct function pointer field.
3095
3096 2006-07-29  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
3097
3098         * gobject/pygflags.c (pyg_flags_add): idem.
3099
3100         * gobject/pygenum.c (pyg_enum_add): Give a more explicit error
3101         message when the gtype is not an enum.
3102
3103 2006-07-25  Johan Dahlin  <jdahlin@async.com.br>
3104
3105         * gobject/pygobject.h (init_pygobject_check): Add a macro to easily
3106         check the installed pygobject version.
3107
3108         * gobject/pygflags.c (pyg_flags_add)
3109         * gobject/pygenum.c (pyg_enum_add): Duplicate the string before
3110         sending it to python. Fixes GCC warnings.
3111
3112 2006-07-24  John Finlay  <finlay@moeraki.com>
3113
3114         * gobject/pygflags.c (pyg_flags_get_first_value_name)
3115         (pyg_flags_get_first_value_nick): Avoid segfault when
3116         g_flags_get_first_value returns NULL.
3117
3118 2006-07-20  John Finlay  <finlay@moeraki.com>
3119
3120         * docs/Makefile.am: Make version.xml dependent on config.h
3121         Make builddate.xml dependent on REFERENCE_DEPS. Add builddate.xml to
3122         build_stamp and pdf dependencies. Add pdf files to cleanup.
3123
3124 2006-07-20  Johan Dahlin  <jdahlin@async.com.br>
3125
3126         * configure.ac:
3127         * docs/Makefile.am:
3128         * docs/reference/.cvsignore:
3129         * docs/reference/version.xml.in:
3130         Generate builddate.xml and version.xml at build time instead on
3131         configure time, add proper dependencies.
3132
3133 2006-07-19  John Finlay  <finlay@moeraki.com>
3134
3135         * docs/Makefile.am: Use more portable date generator.
3136
3137         * docs/xsl/ref-html-style.xsl: Add book to list of indexed items.
3138
3139         * docs/xsl/html.xsl: Output xref links for unknown links.
3140
3141         * docs/xsl/ref-html-style.xsl: Include refsect1 and refsect2 in
3142         indexed items but only if they have ids.
3143
3144         * configure.ac (AC_CONFIG_FILES) : Add docs/reference/version.xml
3145
3146         * docs/reference/pygobject-ref.xml: Add pygobject-introduction.xml
3147         and version and builddate entities. Remove commented out items.
3148
3149         * docs/Makefile.am: Add reference/pygobject-introduction.xml and
3150          reference/version.xml.in
3151
3152 2006-07-18  Johan Dahlin  <johan@gnome.org>
3153
3154         * docs/Makefile.am (HTMLdir): Install book in $datadir/gtk-doc/html
3155
3156 2006-07-13  Johan Dahlin  <jdahlin@async.com.br>
3157
3158         * gobject/gobjectmodule.c: (pyg_type_from_name),
3159         (get_type_name_for_class):
3160         * gobject/pygobject-private.h:
3161         * gobject/pygobject.c: (pygobject_new_with_interfaces),
3162         (pygobject_lookup_class), (pygobject_emit):
3163         * gobject/pygobject.h:
3164         * gobject/pygtype.c: (_wrap_g_type_from_name),
3165         (pyg_type_from_object), (pyg_type_register_custom_callback),
3166         (pyg_type_get_custom), (_pyg_type_from_name):
3167         Add infrastructure for lazy type registration, fixes #346947
3168
3169 2006-07-13  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>
3170
3171         * m4/python.m4: Properly quote AM_CHECK_PYMOD definition.
3172
3173         * gobject/pygoptioncontext.c (pyg_option_context_parse): Fix mem
3174         leak.
3175
3176 2006-07-12  Johan Dahlin  <jdahlin@async.com.br>
3177
3178         * Makefile.am:
3179         * configure.ac:
3180         * docs/.cvsignore:
3181         * docs/Makefile.am:
3182         * docs/common.xsl:
3183         * docs/devhelp.xsl:
3184         * docs/html.xsl:
3185         * docs/pdf-style.xsl:
3186         * docs/pdf.xsl:
3187         * docs/ref-html-style.xsl:
3188         * docs/reference/.cvsignore:
3189         * docs/reference/pygobject-classes.xml:
3190         * docs/reference/pygobject-constants.xml:
3191         * docs/reference/pygobject-functions.xml:
3192         * docs/reference/pygobject-gboxed.xml:
3193         * docs/reference/pygobject-ginterface.xml:
3194         * docs/reference/pygobject-gpointer.xml:
3195         * docs/reference/pygobject-maincontext.xml:
3196         * docs/reference/pygobject-mainloop.xml:
3197         * docs/reference/pygobject-ref.xml:
3198         * docs/reference/pygobject.xml:
3199         Import GObject part of John Finlay's PyGTK Reference Manual, copy
3200         over infrastructure from the pygtk-web module.
3201
3202 2006-07-12  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>
3203
3204         * configure.ac: Post-release version bump to 2.11.1.
3205
3206 === PyGObject 2.11.0 ===
3207 2006-07-09  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
3208
3209         * gobject/gobjectmodule.c (pyg_type_register): Make interface_data
3210         point to the python type before adding the interface to the new
3211         type.  This should fix interface implementation (actually I
3212         thought such code had already been added earlier but can't find it
3213         now and it is obviously needed...)
3214         (pyg_type_register): move the code that needs g_type_class_ref
3215         until after interface registration (more code that I already wrote
3216         in the past but got lost).
3217
3218 2006-07-05  John Finlay  <finlay@moeraki.com>
3219
3220         * gobject/pygiochannel.c (py_io_channel_init): Fix message typo.
3221
3222 2006-06-28  Cedric Gustin  <cedric.gustin@gmail.com>
3223
3224         * dsextras.py (InstallData): Set datarootdir in .pc file.
3225
3226         * pygobject_postinstall.py (replace_prefix): Do not parse
3227         pygtk-codegen-2.0 as it is part of pygtk.
3228
3229         * setup.py: Create gobject extension as gobject._gobject. Add
3230         pygoptioncontext.c and pygoptiongroup.c to the list of source
3231         files. Add option.py to the module files. Changed name of
3232         distutils package from pygtk to pygobject.
3233
3234 2006-06-24  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
3235
3236         * gobject/gobjectmodule.c (pyg_filename_from_utf8): Wrap
3237         g_filename_from_utf8.
3238
3239         * tests/test_signal.py (TestClosures.testGString): Add unit test
3240         for signals using the type TYPE_GSTRING.
3241
3242         * gobject/pygtype.c (pyg_value_as_pyobject)
3243         (pyg_value_from_pyobject): Implement conversion code for the type
3244         G_TYPE_GSTRING.
3245
3246         * gobject/gobjectmodule.c (pyg_filename_display_basename)
3247         (pyg_filename_display_name): Add bindings for
3248         g_filename_display_basename and g_filename_display_name.
3249         (init_gobject): Add a TYPE_GSTRING definition.
3250
3251         * gobject/pygobject.h,
3252         * gobject/pygobject-private.h: Make pyg_constant_strip_prefix
3253         receive and return const gchar*, to indicate it does not change
3254         the string.  Unfortunately since PyModule_AddIntConst is broken in
3255         python < 2.5 this introduces const warnings elsewhere :-(
3256
3257         * gobject/gobjectmodule.c (pyg_flags_add_constants)
3258         (pyg_enum_add_constants): Fix const warnings.
3259
3260 2006-06-23  John Finlay  <finlay@moeraki.com>
3261
3262         * gobject/gobjectmodule.c (pyg_object_class_list_properties)
3263         (pyg_signal_list_ids, pyg_signal_lookup, pyg_signal_query): Add
3264         support for retrieving signal and propertie info from interface types.
3265
3266 2006-06-04  Johan Dahlin  <johan@gnome.org>
3267
3268         * gobject/gobjectmodule.c (pyg_spawn_async)
3269         (pyg_signal_new): Fix two leaks in error cases, found by
3270         Coverity.
3271
3272 2006-05-28  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
3273
3274         * tests/test_subtype.py: Uncomment Johan's "subsubtype" test case.
3275
3276         * gobject/gobjectmodule.c (pygobject__g_instance_init): Pass the
3277         g_class to pygobject_new_full, because during the instance init
3278         function instances are temporarily assigned the parent's GType.
3279
3280         * gobject/pygobject-private.h,
3281         * gobject/pygobject.c (pygobject_new_full): Make
3282         pygobject_new_full accept an optional g_class parameter; If
3283         present, the GType is extracted from the class instead of from the
3284         instance.
3285
3286 2006-05-20  Yevgen Muntyan  <muntyan@tamu.edu>
3287
3288         reviewed by: Gustavo Carneiro
3289
3290         * gobject/pygobject.c (pygobject_init, pygobject_get_property),
3291         (pygobject_set_property): Bug 341174: Be more specific in
3292         set/get_property error messages.
3293
3294 2006-05-07  Yevgen Muntyan  <muntyan@tamu.edu>
3295
3296         reviewed by: Gustavo Carneiro
3297
3298         * gobject/gobjectmodule.c (_log_func, add_warning_redirection),
3299         (remove_handler, disable_warning_redirections, init_gobject):
3300         * gobject/pygobject.h:  Add new pyg_add_warning_redirection and
3301         pyg_disable_warning_redirections APIs (bug #323786 again).
3302
3303 2006-05-07  Johan Dahlin  <johan@gnome.org>
3304
3305         * Makefile.am (CLEANFILES): Remove pygtk.py, it's not
3306         auto-generated any longer. Thanks to Kjartan for noticing.
3307
3308 2006-05-07  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
3309
3310         * gobject/pygoptioncontext.c:
3311         s/sizeof(PyGMainContext)/sizeof(PyGOptionContext)/ (copy-paste error).
3312
3313 2006-05-01  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
3314
3315         * gobject/gobjectmodule.c (pyg_pid_close): Add a close() method
3316         to the GPid wrapper.
3317
3318         * gobject/gobjectmodule.c (pyg_pid_free, pyg_pid_new),
3319         (pyg_spawn_async, init_gobject): Wrap GPid in an object whose
3320         destructor calls g_spawn_close_pid.  Fixes #340160.
3321
3322 2006-04-29  Johannes Hölzl <johannes.hoelzl@gmx.de>
3323
3324         reviewed by: Johan Dahlin  <jdahlin@async.com.br>
3325
3326         * examples/Makefile.am:
3327         * examples/option.py:
3328         * gobject/Makefile.am:
3329         * gobject/gobjectmodule.c: (init_gobject):
3330         * gobject/option.py:
3331         * gobject/pygobject-private.h:
3332         * gobject/pygoptioncontext.c: (pyg_option_context_init),
3333         (pyg_option_context_dealloc), (pyg_option_context_parse),
3334         (pyg_option_context_set_help_enabled),
3335         (pyg_option_context_get_help_enabled),
3336         (pyg_option_context_set_ignore_unknown_options),
3337         (pyg_option_context_get_ignore_unknown_options),
3338         (pyg_option_context_set_main_group),
3339         (pyg_option_context_get_main_group),
3340         (pyg_option_context_add_group), (pyg_option_context_compare),
3341         (pyg_option_context_new):
3342         * gobject/pygoptiongroup.c: (check_if_owned), (destroy_g_group),
3343         (pyg_option_group_init), (pyg_option_group_dealloc), (arg_func),
3344         (pyg_option_group_add_entries),
3345         (pyg_option_group_set_translation_domain),
3346         (pyg_option_group_compare), (pyg_option_group_transfer_group),
3347         (pyg_option_group_new):
3348         * tests/test_option.py:
3349
3350         Add support for GOption, fixes #163645
3351
3352 2006-04-29  Johan Dahlin  <jdahlin@async.com.br>
3353
3354         * gobject/pygtype.c (gclosure_from_pyfunc):
3355
3356         * gobject/pygobject.c (pygobject_disconnect_by_func)
3357         (pygobject_handler_block_by_func)
3358         (pygobject_handler_unblock_by_func):
3359
3360         * tests/test_signal.py (TestEmissionHook._callback):
3361
3362         Fix #154845, add tests and a private method.
3363
3364 2006-04-23  John Ehresman   <jpe@wingware.com>
3365
3366         reviewed by: Gustavo
3367
3368         * Makefile.am:
3369         * pygtk.py:
3370         * pygtk.py.in:
3371         Bug 338945: Make pygtk.py relocatable
3372
3373 2006-04-18  John Ehresman   <jpe@wingware.com>
3374
3375         * dsextras.py: Add compiler / linker flags from pkgconfig-2.0.pc
3376         by default, with an override mechanism.  Filter out -lc & -lm if
3377         compiling with msvc.
3378
3379         * setup.py: Change C extension name to _gobject and don't use the
3380         pkgconfig-2.0.pc when compiling
3381
3382 2006-04-15  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
3383
3384         * gobject/__init__.py (_PyGObject_API): Copy _PyGObject_API from
3385         gobject._gobject into gobject in order to preserve binary
3386         compatibility with 3rd party modules.
3387
3388         * gobject/pygobject.h (init_pygobject): Import gobject, gobject._gobject.
3389
3390         * gobject/Makefile.am: Fix pygobject installation dir: install
3391         both _gobject.la and __init__.py into
3392         $(pyexecdir)/gtk-2.0/gobject.
3393
3394 2006-04-11  Johan Dahlin  <jdahlin@async.com.br>
3395
3396         * gobject/gobjectmodule.c (init_gobject):
3397         * gobject/__init__.py:
3398         Move over almost all GType constants from C to Python.
3399
3400 2006-04-11  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
3401
3402         * gobject/__init__.py:
3403         * gobject/gobjectmodule.c (_wrap_pyg_type_register),
3404         (pyg__install_metaclass, init_gobject):  GObjectMeta now moved to
3405         python-land (__init__.py).
3406
3407         * gobject/pygobject-private.h:
3408         * gobject/pygobject.c (pygobject_register_class):
3409         PyGObject_MetaType is now a pointer, not structure.
3410
3411         * gobject/gobjectmodule.c (_wrap_pyg_type_register): Add optional
3412         type name parameter.
3413
3414         * tests/common.py (importModule): Include original exception
3415         string in the raised SystemExit.
3416
3417 2006-04-11  Johan Dahlin  <jdahlin@async.com.br>
3418
3419         * gobject/.cvsignore:
3420         * gobject/Makefile.am:
3421         * gobject/__init__.py:
3422         * gobject/gobjectmodule.c: (init_gobject):
3423         * gobject/pygobject.h:
3424         * tests/Makefile.am:
3425         * tests/common.py:
3426
3427         Turn gobject into a package; move _gobject to gobject._gobject and
3428         add gobject/__init__.py. Update macros and testsuite.
3429
3430 2006-04-11  Johan Dahlin  <jdahlin@async.com.br>
3431
3432         * configure.ac: Post release version bump
3433
3434 === PyGObject 2.10.1 ===
3435 2006-04-11  Johan Dahlin  <jdahlin@async.com.br>
3436
3437         * NEWS: Update
3438
3439 2006-04-11  Andy Wingo  <wingo@pobox.com>
3440
3441         reviewed by: Johan Dahlin  <jdahlin@async.com.br>
3442
3443         * gobject/gobjectmodule.c (create_property): Parse unsigned int64
3444         constraints in param spec declaration using the "K" ParseTuple
3445         format unit, not L -- allows the full range of the datatype to be
3446         parsed. K format unit added in python 2.3.
3447
3448 2006-04-01  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
3449
3450         * tests/test_properties.py: Add test for #335854.
3451
3452         * pygtk.py.in (require): For version == '2.0', use a hardcoded
3453         pygtk path, recorded during build.
3454
3455         * gobject/gobjectmodule.c (_pyg_strv_to_gvalue): Don't allow
3456         arbitrary sequences, only tuple or list, since a string is a
3457         sequence too.
3458         (pyg_object_new): Add a bit more detail to the exception string.
3459
3460 2006-01-16  Johan Dahlin  <johan@gnome.org>
3461
3462         * Makefile.am: Include dsextras.py in the dist and install it.
3463
3464 2006-03-19  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
3465
3466         * gobject/pygobject.c (pygobject_new_with_interfaces): Remove
3467         comment "It will currently not filter out interfaces already
3468         implemented by it parents.", since it is no longer true since
3469         2006-01-13.
3470
3471 === PyGObject 2.10.0 ===
3472 2006-01-16  Johan Dahlin  <johan@gnome.org>
3473
3474         * NEWS: Update
3475
3476 2006-03-09 Michael Smith  <msmith@fluendo.com>
3477
3478         reviewed by: Johan Dahlin  <jdahlin@async.com.br>
3479
3480         * gobject/pygenum.c: (pyg_enum_new), (pyg_enum_from_gtype),
3481         (pyg_enum_add):
3482         * gobject/pygflags.c: (pyg_flags_new), (pyg_flags_from_gtype),
3483         (pyg_flags_add):
3484         Plug a couple of leaks, fixes #334027.
3485
3486 2006-01-19  Johan Dahlin  <johan@gnome.org>
3487
3488         * configure.ac (export_dynamic):
3489         * Makefile.am (egg):
3490         Add a make egg target
3491
3492 2006-01-16  Johan Dahlin  <johan@gnome.org>
3493
3494         * configure.ac: Post release version bump
3495
3496 === PyGObject 2.9.1 ===
3497 2006-01-16  Johan Dahlin  <johan@gnome.org>
3498
3499         * NEWS: Update
3500
3501 2006-01-15  Christopher Aillon  <caillon@redhat.com>
3502
3503         * gobject/gobjectmodule.c (pyg_strv_to_gvalue):
3504         Don't call g_value_init since the other *_to_gvalue
3505         methods expect an already inited GValue
3506
3507 2006-01-14  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
3508
3509         * gobject/gobjectmodule.c (iowatch_marshal): Warn if io callback
3510         returns None: almost always this is an error.
3511
3512 2006-01-13  Gustavo J. A. M. Carneiro  <gjc@gnome.org>
3513
3514         * gobject/pygobject.c (pygobject_register_class): Change strategy
3515         a bit: don't ignore bases; use but augment it with missing bases
3516         extracted in runtime.
3517
3518         * gobject/pygobject.c (pygobject_register_class): Don't use the
3519         passed in 'bases' parameter; instead find out in runtime the bases
3520         for any given gtype.
3521         (pyg_type_get_bases, pygobject_new_with_interfaces): Refactor code
3522         that dynamically discovers bases into a separate function;
3523         Override tp_dealloc, tp_alloc, tp_free, tp_traverse, and tp_clear,
3524         inherit them again from the parent type, since type_new inside
3525         Python core sets them to hardcoded functions subtype_xxx.  Also
3526         call py_parent_type->ob_type, instead of fixed &PyType_Type.
3527         (pygobject_clear): Change a g_message to g_warning.
3528
3529 2006-01-13  Johan Dahlin  <jdahlin@async.com.br>
3530
3531         * gobject/gobjectmodule.c: (pyg_io_add_watch),
3532         (marshal_emission_hook), (pyg_add_emission_hook),
3533         (pyg_remove_emission_hook):
3534         * gobject/pygobject.c:
3535         * tests/test_signal.py:
3536
3537         Add add/remove_emission_hook and tests. Fixes #325977
3538
3539 2006-01-11  Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>
3540
3541         * gobject/gobjectmodule.c (_pyg_signal_accumulator),
3542         (create_signal, pyg_signal_accumulator_true_handled),
3543         (initgobject): Bug 155380 -- Add support for signal accumulators.
3544
3545         * tests/runtests.py: Add 'test_enum', 'test_conversion' to
3546         SKIP_FILES, since they depend on pygtk modules so don't work
3547         anymore.  This should be eventually fixed, though.
3548
3549         * tests/test_signal.py: Test signal accumulators.
3550
3551         * gobject/pygtype.c (object_doc_descr_get): Reorder
3552         properties/signals documentation more nicely: signals + properties
3553         from each type are presented, with types ranging from the leaf
3554         types to the base types.
3555
3556         * configure.ac: Branch, bump version to 2.9.1.
3557
3558 === PyGObject 2.8.0 ===
3559 2006-01-09  Johan Dahlin  <jdahlin@async.com.br>
3560
3561         * MANIFEST.in:
3562         * Makefile.am:
3563         * tests/Makefile.am:
3564
3565         Make dist/distcheck work again
3566
3567 2006-01-09  Johan Dahlin  <jdahlin@async.com.br>
3568
3569         * setup.py: Add distutils support
3570
3571         * dsextras.py (get_m4_define): Check for configure.ac aswell.
3572
3573         * .cvsignore:
3574         * AUTHORS:
3575         * COPYING:
3576         * INSTALL:
3577         * Makefile.am:
3578         * PKG-INFO.in:
3579         * README:
3580         * autogen.sh:
3581         * configure.ac:
3582         * examples/.cvsignore:
3583         * examples/Makefile.am:
3584         * gobject/gobjectmodule.c: (initgobject):
3585         * m4/jhflags.m4:
3586         * m4/python.m4:
3587         * pygobject-2.0.pc.in:
3588         * tests/Makefile.am:
3589         * tests/common.py:
3590         * tests/leak.glade:
3591         * tests/runtests.py:
3592         * tests/test_actiongroup.py:
3593         * tests/test_dialog.py:
3594         * tests/test_gdk.py:
3595         * tests/test_gdkevent.py:
3596         * tests/test_glade.py:
3597         * tests/test_gtype.py:
3598         * tests/test_liststore.py:
3599         * tests/test_radiobutton.py:
3600         * tests/test_signal.py:
3601         * tests/test_subtype.py:
3602         * tests/test_textview.py:
3603         * tests/test_thread.py:
3604         * tests/testhelpermodule.c: (test_type_get_type),
3605         (_wrap_test_g_object_new):
3606         * tests/testmodule.py:
3607
3608         Split out PyGObject from PyGTK.