Bug#338090: Broken python binding

Loic Minier lool at dooz.org
Tue Nov 8 10:22:13 UTC 2005


clone 338090 -1
reassign -1 python-gtk2-dev 2.8.0-1
retitle -1 pygtk-codegen-2.0 from 2.8's pygtk generates code incompatible with python 2.3
severity -1 important
thanks

        Hi,

On Mon, Nov 07, 2005, Manish Singh wrote:
> Due to a bug upstream (http://bugzilla.gnome.org/show_bug.cgi?id=320931)
> a python/vte.c generated for pygtk 2.8 is distributed with the tarball.
> Since the date is newer than the other source files, it's not
> regenerated, and the resultant binary does not work

 Thanks for your report, I've already forwarded a couple of reports on
 this matter upstream, namely Debian bugs #334001 and #334668, and this
 is discussed at:
    <http://bugzilla.gnome.org/show_bug.cgi?id=313454>

 I noted that this is specific to Python 2.3, and rebuilding python-vte
 with Python 2.4 will make it import like a charm.

 If I understand you correctly, python/vte.c is generated automatically
 (it seems via pygtk-codegen-2.0) and the resulting code is not suitable
 for Python 2.3.  This seems to imply that this script has to be
 carefully split out in a python 2.3 and a python 2.4 version, or get
 some flags added to run in 2.3 compatibility mode.

 Hence, I removed vte.c and ran in a clean sid chroot (with pygtk
 2.6.3-2):
 bee% pygtk-codegen-2.0 -p pyvte -o vte.override --register
 /usr/share/pygtk/2.0/defs/gtk-types.defs --register
 /usr/share/pygtk/2.0/defs/gdk-types.defs --register
 /usr/share/pygtk/2.0/defs/pango-types.defs vte.defs vte.override >
 vte.c
 Could not write method VteTerminal.forkpty: No ArgType for 'char**'
 Could not write method VteTerminal.match_check: No ArgType for 'int*'
 ***INFO*** The coverage of global functions is 100.00% (3/3)
 ***INFO*** The coverage of methods is 97.26% (71/73)
 ***INFO*** There are no declared virtual proxies.
 ***INFO*** There are no declared virtual accessors.
 ***INFO*** There are no declared interface proxies.

 and the result is the attached vte.c file which has only minor
 modifications beside this one:
    @@ -1548,7 +1546,6 @@
         }
     
     
    -#line 1552 "vte.c"
    +#line 1550 "vte.c"
         pygobject_register_class(d, "VteTerminal", VTE_TYPE_TERMINAL, &PyVteTerminal_Type, Py_BuildValue("(O)", &PyGtkWidget_Type));
    -    pyg_set_object_has_new_constructor(VTE_TYPE_TERMINAL);
     }
 ... which suggest the problem will be fixed.

 Do you have any suggestion on fixing the root problem (ie.
 pygtk-codegen-2.0)?

 Should all packages be examined against this problem?

   Cheers,
-- 
Loïc Minier <lool at dooz.org>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vte.c
Type: text/x-csrc
Size: 51188 bytes
Desc: not available
Url : http://lists.alioth.debian.org/pipermail/pkg-gnome-maintainers/attachments/20051108/5debfa39/vte-0001.c


More information about the Pkg-gnome-maintainers mailing list