xpra icon
Bug tracker and wiki

Opened 5 months ago

Last modified 5 days ago

#1568 assigned task

python3

Reported by: Antoine Martin Owned by: Antoine Martin
Priority: major Milestone: 3.0
Component: core Version: trunk
Keywords: Cc:

Description (last modified by Antoine Martin)

Tracker ticket for everything related to python3.

Split from #640 / #90.
See also:

  • packaging: #1253 split packages, #1258 "python2" package naming
  • #1041 python3 for gstreamer on win32 (no longer used since #678)
  • #1386 python3 for gstreamer sound process (other platforms)
  • #1569 python3 opengl client
  • #1574 python3 packaging for win32
  • #1575 python3 for macos
  • #1589 GTK3 clipboard support
  • #853 python3 server

Change History (11)

comment:1 Changed 5 months ago by Antoine Martin

Description: modified (diff)
Status: newassigned

comment:2 Changed 5 months ago by Antoine Martin

Subcommands with python3:

  • attach: needs opengl: #1569
  • detach: OK
  • screenshot: fixed in r16267
  • info: OK
  • control: OK
  • print: OK
  • version: fixed in r16269
  • showconfig: OK
  • list-mdns: fixed in r16274
  • mdns-gui: fixed in r16275
  • shadow: subcommand now hidden in r16277 (needs work)

Server bits are moved to their own ticket: #1571.

comment:3 Changed 5 months ago by Antoine Martin

Description: modified (diff)

comment:4 Changed 5 months ago by Antoine Martin

Description: modified (diff)

comment:5 Changed 4 months ago by Antoine Martin

nvenc fixes and dependency updates: r16399 + r16400 + r16401 (see ticket:1550#comment:14)

comment:6 Changed 4 months ago by Antoine Martin

Description: modified (diff)

comment:7 Changed 3 months ago by Antoine Martin

Part of r16607 doesn't work on python3:

Warning: unable to override socket object
 SSL peek support will not be available
 module 'socket' has no attribute '_socketobject'

See #1504 for details.

comment:8 Changed 2 months ago by Antoine Martin

Description: modified (diff)

comment:9 Changed 8 weeks ago by Antoine Martin

Lots of updates in r17015 + r17017. The shadow server is now usable with python3, only needs a few minor fixes:

  • encoding options aren't set properly (csc warnings, no video encoders)
  • clipboard is disabled
  • ssl socket peek wrapper
  • errors during cleanup caused by py3k needless breakage ie: RuntimeError: dictionary changed size during iteration in cancel_damage : for sequence in self.statistics.encoding_pending.keys():

comment:10 Changed 7 weeks ago by Antoine Martin

More updates and fixes:

Python3 shadow servers are now totally usable and fast. Not much left to fix here:

  • cursor icons
  • SIGINT (general problem with GTK3)

TODO:

  • the client still needs graphs in session info
  • websockify needs patching (removing ForkingMixIn)
  • server core needs a different workaround for non-blocking sockets
  • problem with mouse cursors?
  • XSETTINGS / root props, see r6384 (needs more GTK glue)
  • transparency may work without opengl?
Last edited 7 weeks ago by Antoine Martin (previous) (diff)

comment:11 Changed 5 days ago by Antoine Martin

r17098 is wrong, the bug is still present in all GTK3 versions! Ctrl+C does not exit gtk app - absolutely amazing that such a fundamental issue has not been fixed in so many years.
It does mean that we may be scheduling timers too often, which is why we exit the main loop and catch the signal. Worth looking into.

Note: See TracTickets for help on using tickets.