Opened 12 years ago

Closed 10 years ago

#1759 defect closed invalid (invalid)

eliminate "portable" gtk2 reactor on win32 platforms, use real gtk2 reactor

Reported by: Glyph Owned by:
Priority: high Milestone:
Component: core Keywords:
Cc: teratorn Branch:


In reality gtk2reactor is portable already. I haven't done a full test run on windows but the basics (twisted.test) do work.

But hey, full test runs on Windows aren't my job any more, right?

Please review this and merge it if it looks like it might actually work.

Attachments (1)

its-portable-already.diff (1.9 KB) - added by Glyph 12 years ago.

Download all attachments as: .zip

Change History (12)

Changed 12 years ago by Glyph

Attachment: its-portable-already.diff added

comment:1 Changed 12 years ago by Glyph

Priority: normalhighest

comment:2 Changed 12 years ago by Glyph

Ugh. I discovered today that gtk2 uses MsgWaitForMultipleObjects internally, meaning that the socket limit is 63 as with win32eventreactor. I guess the PortableGtk2Reactor should stick around.

comment:3 Changed 12 years ago by Glyph

Keywords: review removed
Priority: highestlow

Eventually I guess we should figure out if this should be an option or something. Let's forget about it for now.

comment:4 Changed 11 years ago by teratorn

Owner: teratorn deleted

comment:5 Changed 11 years ago by teratorn

Cc: teratorn added

comment:6 Changed 10 years ago by Jean-Paul Calderone

Priority: lowhigh
Type: enhancementdefect

Surprise! Untested code is broken code. PortableGtkReactor chokes and dies:

AttributeError: 'PortableGtkReactor' object has no attribute '_simtag'

Note that this effectively means that Twisted + Gtk2 on Windows is totally broken.

We should get rid of PortableGtkReactor and live with the limit and/or set up a win32 gtk2 buildslave.

comment:7 Changed 10 years ago by Jean-Paul Calderone

A user report indicates that fixing the (trivial) _simtag issue results in something that seems to work. Gtk2Reactor, however, the same user reports, does not work on Windows Vista.

comment:8 Changed 10 years ago by jdahlin

Please do not remove PortableGtkReactor, it is working better than the normal GtkReactor for me using Windows Vista.

I reported #3203 about the AttributeError, fixing that which is not particularly difficult makes my gtk based program work much better on win32.

comment:9 Changed 10 years ago by Glyph

#2949 was a duplicate of this bug.

comment:10 Changed 10 years ago by Jean-Paul Calderone

Resolution: invalid
Status: newclosed

Because of the 63 socket limit and because g_io_add_watch doesn't work with sockets on Windows (you have to use g_io_channel_win32_new_socket), I think we'll keep PortableGtkReactor for now.

comment:11 Changed 7 years ago by <automation>

Note: See TracTickets for help on using tickets.