dwww Home | Show directory contents | Find package

v3.1.3 (2022-06-26)
======================
        -- major fixes:
                - GDK crash when updating parked windows geometry
                - always free X11 images safely
                - MS Windows clients mishandling some window hints (ie: Firefox)
                - connection errors when non-user-interactive clients are connected
                - filenames with special characters when opened remotely
                - missing notifications due to icon parsing errors
                - handling of packet parsing errors
                - bencoder error when cuda info is missing
                - missing auto-refresh
                - 'Content-Security-Policy' fixes and workarounds for Safari, xpra-html5 v6
                - keyboard mapping not honouring the more specific keymap definition
                - honour system prefix when loading xkb keymaps
                - launcher gui initialization error on Wayland
                - audio and webcam not starting with some packet encoders
        -- build and packaging:
                - build using CUDA 11.7 by default, compile as C++11
                - clean target left some generated files behind
                - dependency updates
                - MacOS new package signing key
                - ffmpeg 5.0 compatibility
                - library updates: Cython, pynvml, etc
                - workarounds for latest Cython with GCC 4
                - support almalinux, rocklylinux and oraclelinux 8 build targets
                - aarch64 builds
                - content type updates: `unityhub` is a browser, `ffplay` is video
        -- minor bugs and tweaks:
                - clipboard errors with MS Windows clients and UTF8 data
                - server errors on encoding change (ie: client tray menu)
                - store and send client properties as strings
                - configurable ping timeout delay
                - make it possible to run the client without some cython extensions
                - 'xpra showsetting' subcommand errors
                - always expose the server socket location
                - make socket querying code more resilient
                - potential race conditions with xpra info requests
        -- cosmetic:
                - more understandable error message when ssh fails to connect
                - during shutdown, ignore errors trying to set nodelay / cork
                - clipboard error messages when there is no client handling it
                - avoid warnings triggered by Pillow v9
                - show disabled menu entries in MacOS menus with GTK3 builds
                - codec loader output was ignoring standard log output format
                - silence spurious authentication modules warnings
                - always log the full backtrace for client connection errors
                - use the correct license short names
                - nvml version query error
                - misc logging tweaks and fixes
        -- encodings:
                - disable vaapi with the ffmpeg encoder (crashy)
                - handle grayscale png images with transparency
                - workaround for missing video mode client metadata
                - don't send empty alpha channel
                - never delay screen updates unless we have a video region
                - jpeg decoder generated invalid picture metadata


v3.1.2 (2021-10-19)
======================
        -- encoding errors with vpx
        -- fix pkg-info build command
        -- packaging workarounds for Ubuntu Impish
        -- fixup missing import in backport
        -- minor RPM build fixes
        -- rebuild with small fixes


v3.1.1 (2021-10-07)
======================
        -- critical bugs:
                - fix crashes during printer enumeration on MS Windows
                - fix crashes when starting audio forwarding via the command line
                - disable crashy ffmpeg codecs with 32-bit builds
                - rencode DoS (MacOS and MS Windows binary builds)
                - missing key events
        -- server stalls:
                - don't load menu data from the main thread
                - don't query the list of printers from the main thread
        -- build, packaging and platform fixes:
                - Python 3.10 support
                - default to using CUDA 11.4
                - don't try to build NVENC against newer glibc headers (CUDA bug)
                - support NVidia Ampere cards natively
                - compatibility with experimental version of ffmpeg (GBRP9LE)
                - more reliable git branch detection
                - Linux distribution detection bug with Python 3 versions
                - remove unnecessary runtime dependency on distutils
                - clipboard support with python2 servers started from a Wayland environment
                - corrupted cursors on MS Windows
                - make it possible to bundle webcam support on MS Windows (still disabled by default)
                - updated GStreamer dependencies
                - the Debian package name we have to recommend is 'dnspython'
                - generic / common RPM packages should not depend on Python 3
                - use the correct /etc/default path for service configuration
                - MacOS updates for GTK3 3.24.30: patches, dependencies
                - MacOS packaging of the latest Python pillow with webp support
                - add missing C++ files to source snapshots
                - fixup some compatibility issues in previous backports
                - clean generated Cython files (some pyd filenames have changed)
                - use the versioned python interpreter for sourcing files (fix error on CentOS 8)
                - locate libfakeXinerama more reliably (at build time)
                - missing vpx support on CentOS 7.x
                - libwebp 1.2.1
                - pynvml 11.470.66
                - patched rencode - override the buggy version from EPEL
                - arm64 build and packaging tweaks
        -- network:
                - handle mmap client setup errors correctly
                - mmap unix group lookup API
                - support improved packet encoders
                - use the correct exit code for encryption problems
                - http script errors
                - session 'name' server control command error
                - use cryptographically secure random values with AES
                - prevent DoS using unreasonably large number of key stretching iterations
                - menu errors when there are active VNC connections
                - stricter validation of raw packet indexes
                - better compatibility with packet encoders (start menu, clipboard)
                - reply with 404 if we don't find any data to send
                - correctly parse ssh remote command output
                - MacOS and MS Windows shadow servers missing the default TCP socket (port 14500)
        -- authentication:
                - stricter validation of challenge digest
                - honour the `socket-dirs` option in authentication modules
                - fallback to the current user if the one specified is invalid
        -- encodings:
                - correctly paint OpenGL scaled jpeg YUV screen updates
                - error in 'void' paint handler (normally unused)
                - sha1 data integrity checksum values
                - re-enable non-fatal ffmpeg logging outside suppressed code blocks
                - vpx encoder uninitialized variable undefined behaviour
                - restrict the number of NVENC errors tagged as transient
                - don't use AV sync for 'text', 'desktop' and 'picture' content types
        -- window geometry:
                - errors with StackMode requests
                - size hints not being honoured in some rare cases
        -- misc fixes:
                - notifications should not override the exit code
                - stop processing info requests when the server is exiting
                - increase the maximum size of Xdummy resolutions (uses more memory)
                - retry if we fail to load the list of windows the first time (seamless servers)
                - missing notifications when failing to load the icon
                - fix default values shown with 'xpra --help'
                - try harder to exit the server cleanly (kill xvfb and dbus later)
                - honour the force-replace-wm flag when upgrading
                - some modifiers may not have matching key names (ie: VNC clients)
                - don't expose xdg desktop entries that don't have a command to run
                - smooth scrolling with GTK3 clients
                - documentation, debugging, logging tweaks and fixes
                - u2f tool error
                - prefer https for links to the xpra.org website
                - fix saving icons with gi bindings (Python 3)
                - make it easier to run in a prefixed installation
                - cursor regression with Python 2 builds
        -- proxy fixes:
                - preserve audio packets chunking (avoids an HTML5 client bug)
                - avoid potential race conditions with video encoder re-framing
                - try harder to find a usable session directory to use
        -- audio fixes:
                - ensure we always stop the 'new-stream' notification process
                - remove aac codec flag causing compatibility errors
                - fix sink test tool command line usage
        -- 'top' client:
                - server errors when 'top' clients are connected
                - handle unicode window names correctly
                - threading fixes (screen corruption)
                - latency shown as always zero
        -- html5:
                - less strict content security policy
                - ensure the 'set-initial-position' attribute is initialized
                - avoid sending window attributes set to 'None'
                - fix lz4 with AES incompatibility
                - log the reason when closing
                - don't start a new session again when re-connecting
                - don't try to re-connect when the server is shutting down
                - re-connected session would lose its connection quickly
                - keyboard layout mapping from browser language
                - window snapping to the edge, wrong offset
                - avoid triggering server side errors on OR windows


v3.1 (2021-06-13)
        -- critical fixes:
                - proxy deadlock, subprocess leak, socket errors
                - proxy start and display handling errors
                - proxy disconnections under heavy load
                - 'scroll' detection bugs
                - attach failures with remote start
                - windows not getting focus
                - unnecessary screen update latency
                - crash / corruption in the webp encoder
                - crash caused by resizing large SVG icons
                - crash caused by notifications
                - screen resizing with invalid DPI values
                - audio silence detection with DEB packages
        -- screen update fixes:
                - cairo rendering artifacts
                - lossy screen updates when 'scroll' encoding is used
                - video subregion detection error
                - wayland client geometry repaint
                - recover speed more quickly
                - expire delayed regions on schedule
                - mmap does not need refreshing
        -- misc fixes:
                - concurrency runtime errors
                - window resize counter was invalid / ignored
                - cuda error handling
                - xdg menu loading failures
                - 'encoding' control command
                - invalid default value for $XDG_DATA_DIRS
                - parsing of peercred options
                - spurious errors if file transfers are disabled
                - validation of display numbers
                - sessions started by the proxy miss $HOME and $USER
                - tray menu clipboard errors
                - environment variables not honoured via xpra launcher
                - URL forwarding errors with Python 3 clients
                - dangerous default argument corruption
                - honour XPRA_NOMD5 in window border code
                - warning message format under VirtualBox on MS Windows
                - honour the XPRA_XDG_EXPORT_ICONS environment variable
                - ensure passwords are not logged using 'auth' debug logging
                - xdg-open stdout / stderr formatting
        -- build, packaging, platform and test fixes:
                - compilation errors with newer GCC versions, CentOS 7
                - workaround IO encoding errors when saving the build info
                - don't build the system service by default on MS Windows
                - don't build ffmpeg codecs on 32-bit systems (crashy)
                - more git path workarounds
                - missing build dependencies
                - split Python 2 vs 3 packages
                - support Python 3.9
                - printing diagnostic script errors with Python 3
                - updated supported distributions
                - updated build and runtime dependencies
                - MacOS Big Sur compatibility
                - SELinux policy tweaks
                - ignore 'bell' audio device
                - never pollute /root/.xpra or /root/.config/
                - point to the correct systemd service configuration file path
                - remove hard dependency on 'gnome-shell'
                - invalid permissions on some scripts and data files
                - update packging to get version information from git
                - OpenBSD build fix
        -- MS Windows fixes:
                - test errors due to low precision clock
                - clipboard cleanup errors
                - bubble notifications not showing up
                - missing / transparent icons in the system tray
                - overflow errors accessing window handles
                - use an up to date PDFium library
                - non-ascii key lookup with shadow servers
                - client sub-layout detection
                - client handling of 'Control' key combinations
        -- keyboard fixes:
                - key symbol lookup
                - invalid key modifier detection
                - stuck keys
                - mismapped key groups
        -- network fixes:
                - handling of jittery connections
                - silence mdns warnings
                - socket creation errors with missing directories
                - failures to enable packet compression
                - connection errors when a non-ui client is already connected
                - try harder not to leave 'xpra _proxy' zombies behind
                - ssh connection errors with proxycommand or proxyhost port numbers
                - ensure some packets are not delayed unnecessarily
                - file transfers with non-ascii filenames
                - automatically shrink large SVG icons
        -- HTML5 client:
                - sends audio 'stop' before it is allowed to do so
                - can specify the display to connect to
                - show complete disconnection message
        -- enhancements and changes:
                - allow exit-with-children with any start-child argument
                - nvjpeg encoder
                - latest 'xpra top' client
                - updated window class mappings
                - support smooth scrolling - ie: touchpads
                - faster server startup
                - increase default refresh rate
                - honour initial window position hint
                - 'source-start' now handles executables that print the new environment
                - drop Python 2 / GTK 2 builds on MS Windows
                - add new common screen resolutions for Xdummy
                - add 'map' and 'unmap' control commands
                - debug logging tweaks, remove confusing messages
                - the socket type can be specified with systemd socket activation
                - stop supporting legacy salt digest modes
                - always verify SSL hostname


v3.0.12 (2020-08-20)
======================
        -- fix NVENC encoder (profile errors, cleanup race condition)
        -- fix unmanaged X11 message call which could cause GTK to crash when it fails
        -- fix 'sync-xvfb' option: setup error, non-standard bit depth support
        -- fix missing system tray on Ubuntu 18.04
        -- fix workspace spurious warnings on 64-bit X11 systems
        -- fix event handler with 64-bit MS Windows builds
        -- fix named-pipe server clash
        -- fix error handing in MS Windows printer query API
        -- switch to Xvfb on Debian and Ubuntu
        -- workaround more pyxdg bugs
        -- ignore plink packaging errors with 32-bit MS Windows builds
        -- disable swscale on 32-bit MS Windows builds (prevent crashes)
        -- tabs mixed with spaces (potential for bug)
        -- add missing DEB dependency


v3.0.11 (2020-08-07)
======================
        -- fix encryption option overzealously enforced on all socket types
        -- fix network layer compression errors that can cause connections to drop
        -- fix printing errors with some shell character encodings
        -- fix NVENC h264 stream compatibility with HTML5 client
        -- fix windows not getting focused when clicking on title bar (HTML5)
        -- fix suspend / resume errors with tray windows
        -- fix Python2 / GTK2 compatibility regression from 3.0.10
        -- fix tray geometry errors
        -- fix minimum video scaling not being honoured via heuristics
        -- fix clipboard data sometimes going missing when ownership changes
        -- fix error in main thread verifier (fortunately, never fired)
        -- fix python-pillow packaging conflicts on CentOS / RHEL 7
        -- fix memory contents of the swscale pixel format object
        -- fix csc_swscale converter getting recycled every time
        -- fix division by zero errors during window cleanup
        -- fix detection of named-pipe creation errors
        -- fix MS Windows shadow server errors with 'bind=auto'
        -- fix MS Windows servers slow to handle connections with mDNS enabled
        -- fix sshfp support on MacOS (was missing dns python module)
        -- fix MacOS errors with some subcommands (ie: 'list')
        -- fix notification widget wrongly stealing input focus
        -- fix support for building with CUDA 11.0
        -- fix unshrinkable session-info window
        -- fix window resizing errors when non-GUI clients are also connected
        -- avoid ever using b-frames for text content
        -- silence unhelpful gtk warnings on MacOS
        -- avoid opengl warning with wayland
        -- discard invalid clipboard requests early
        -- workaround for older versions of python-cryptography
        -- use 'text' mode for 'geany' (fixes lossy screen updates)
        -- ensure all toolbox windows set a correct and readable window title
        -- convert invalid map events to warnings (no scary crash reports)
        -- also update mdns records when the session name changes
        -- make it possible to specify the path used for saving video streams / frames


v3.0.10 (2020-06-04)
======================
        -- fix X11 server key symbol lookup via Xkb
        -- fix encryption not honoured with TCP sockets upgraded to WebSocket
        -- fix window corruption with 'scroll' encoder
        -- fix desktop-scaling changes from the system tray
        -- fix clipboard synchronization problems caused by clipit
        -- fix packaging with newer versions of py2app (MacOS)
        -- fix logging spam in start-new-command dialog
        -- fix building from source on archlinux
        -- fix swapped red and blue colours channels in win32 systray
        -- fix error parsing invalid config files
        -- fix missing content-type for some windows
        -- fix server crash on exit on some Linux distributions
        -- fix 'xpra send-file' to use absolute file paths
        -- fix format of attributes given to glXChooseVisual
        -- fix crashes in OpenGL context setup on X11
        -- fix race condition in window statistics
        -- fix server errors when non-interactive clients are connected
        -- fix option parsing errors causing html5 client connection failures
        -- fix python-lz4 packaging on MS Windows (Python2 builds)
        -- html5 fixes:
                missing desktop background
                client errors painting rgb32 data with a padded rowstride
                clipboard wrongly clearing data on failures
                compatibility issues with Internet Explorer
                missing transparency for windows in focus
                no windows focused after close
                connection errors caused by spurious packets
                error in invalid packet handler
                AES encryption connections
                connection errors with AES and lz4 (disable lz4 for now)
                packet error with very small paint packets
                'insecure passwords' option shown in the wrong cases
                handle window iconification messages
                update version in about page
        -- fix connection errors with 'None' values in bencoder (ie: html5)
        -- fix connection errors with websocket connections and AES encryption
        -- fix duplicate clipboard token sent from MS Windows servers
        -- fix window initialization errors causing server startup failures
        -- cleaner exit path: destroy all of our windows properly
        -- add workaround for wine applications (disabled by default)
        -- add 'terminator' to the 'text' application hint
        -- validate webp image dimensions for transparency encoding
        -- workaround bugs in pyxdg / menu configuration
        -- try harder to strip all temporary build prefixes
        -- remove invalid extra strings from mdns service name
        -- change DLL search order to prevent conflict (MS Windows)
        -- MacOS: update to Python 2.7.18 for python2 builds
        -- don't recommend installing Apple's 'bonjour' on MS Windows (not needed)
        -- MS Windows build setup update: install python-lzo using pacman


v3.0.9 (2020-04-14)
======================
        -- fix HTML5 client XSS
        -- fix focus issues
        -- fix server hangs and unpainted windows due to invalid dimensions
        -- fix window icons and cursors visual corruption or crashes
        -- fix unbearably slow screen updates when vrefresh value is invalid
        -- fix client OpenGL crashes with remote starts (run probe first)
        -- fix keypad regression (AltGr changes, again)
        -- fix MS Windows shadow servers
        -- fix race condition collecting latency data for session info
        -- fix missing pycuda dependency for nvenc on MS Windows
        -- fix missing signatures on MS Windows EXE and MSI builds
        -- fix scoring of NVENC codec (should be used ahead of sofware encoders)
        -- fix start menu updates getting lost
        -- fix OpenGL diagnostic messages getting cut off
        -- fix change of encoding from the system tray
        -- fix quality and speed changes from the system tray
        -- fix clipboard and popup menu problems with Eclipse
        -- fix name of shadow server process on MS Windows, used in log file names
        -- fix audio query subprocess with MS shadow servers
        -- fix unlikely race condition in speaker forwarding shutdown sequence
        -- fix desktop-fullscreen=yes automatic scaling
        -- fix missing bug report data due to uninitialized X11 bindings
        -- fix bug report error if we cannot grab a screenshot (ie: Wayland)
        -- fix error saving binary data with python3 builds of the bug report tool
        -- fix errors querying the display under Wayland
        -- hide scary stacktraces when shutting down ssh proxy commands
        -- if we have an ssh password we can use, try that first
        -- blacklist VirtualBox's SVGA3D OpenGL driver (fixes black windows)
        -- don't use webp with image dimensions beyond its limits
        -- use regular X11 system tray with i3
        -- hide confusing named-pipe prefix in empty output on MS Windows
        -- HTML5 fixes: invalid IMG tag, reserved keyword, language detection, draw debugging, etc
        -- don't try to read /proc if not on Posix
        -- support more versions of Visual Studio when compiling CUDA kernels
        -- use a more specific python3 interpreter version
        -- update application content-type mappings
        -- remove out of date information from man page
        -- MacOS: openssl 1.1.1f


v3.0.8 (2020-03-31)
======================
        -- fix handling of dpi command line switch (correctly this time?)
        -- fix bug report window not getting focus on MacOS
        -- fix spurious ssh key warnings with newer versions of paramiko
        -- fix AltGr mode with non-X11 clients, layout-group changes
        -- fix rare unexpected client exit on MS Windows
        -- fix MS Windows clipboard:
            update failures
            convert CRLF line endings
        -- Clipboard:
            fix selection not shown as active in menus (MS Windows and MacOS)
            fix spurious warnings when sharing a session
            fix clipboard reset with python2 builds
            selection translation for outbound data
            support client applications that don't use TARGETS (ie: Motif)
            reject invalid targets
        -- fix 'xpra upgrade' wrongly updating non-xpra displays
        -- fix logging error in client geometry debugging output
        -- fix pulseaudio start command with Ubuntu Xenial
        -- fix spurious de-iconifications
        -- fix handling of server control commands with python3 clients
        -- fix UDP backport bug sending control packets
        -- fix vfb getting killed on upgrade failure
        -- fix proxy server cleanup: force forwarders to terminate
        -- fix session info errors during client exit
        -- fix printer cleanup errors with invalid UTF8 printer names
        -- fix transient-for popup window workaround
        -- fix missing libyuv csc module on MacOS
        -- fix unicode errors saving xpra runner shell script with python3
        -- try to prevent conflicts with Fedora's packages
        -- better detection of Wayland environments
        -- use python3 (if installed) by default on Ubuntu Xenial
        -- don't use Xdummy on arm, too slow
        -- don't show 'Download' button that we can't honour
        -- show all pressed keys according to X11 server in 'xpra info'
        -- try harder not to use video for tiny areas


v3.0.7 (2020-03-02)
======================
        -- fix avcodec2 race condition crash
        -- fix errors when re-initializing windows (ie: toggling OpenGL on or off)
        -- fix deiconification error when there are system trays forwarded
        -- fix missing alpha channel when some windows are first shown
        -- fix systemd-run errors: verify it does work before trying to use it
        -- fix debug builds compilation error on MS Windows
        -- fix server crashes on SIGINT: shutdown cleanly
        -- fix proxy server client connection setup error hanlder
        -- fix file authentication handler using a default password filename
        -- fix directshow errors on local mingw installations
        -- fix opengl properties missing from server hello packet
        -- fix HTML5 sound-control errors when speaker forwarding is disabled
        -- fix HTML5 "Terminate" options wrongly enabled in "Connect" mode
        -- fix clipboard sharing with the MacOS shadow server
        -- fix MS Windows clipboard access denied errors
        -- fix X11 clipboard error handling: continue processing
        -- fix unit tests failures (clipboard, etc)
        -- fix bug report clipboard copy and screnshots
        -- fix clipboard timeouts when a client disconnects
        -- fix mdns cleanup done twice on server exit, causing errors
        -- fix malformed XSettings due to invalid color data format
        -- fix FreeBSD builds
        -- fix MS Windows packaging missing a codec DLL, Plink DLL
        -- fix HMAC hashes exposed, keep only valid options
        -- fix 'showconfig' output for boolean values set to 'auto'
        -- fix parsing of client display information in legacy format
        -- fix validation of size-hints
        -- fix cursor saving debug code with GTK3
        -- fix keyboard layout group not getting reset on client exit
        -- fix some empty keyboard layout group strings parsed as non-empty
        -- fix keyboard-sync mode not being honoured by servers
        -- fix keyboard raw mode
        -- fix missing 'perispomeni' key mapping with Python 2 servers
        -- add missing debug logging to keyboard mapping
        -- more reliable lookup of keycodes when translating (non-X11 clients)
        -- add missing dependency for printer forwarding on Debian
        -- packaging for Ubuntu Focal Fossa
        -- skip bundling some external test modules with binary installers
        -- more correct code for locating the 'Downloads' folder on MS Windows
        -- avoid spurious background worker warnings on exit
        -- make unavoidable comtypes error less scary
        -- add 'libreoffice' to the text mode whitelist
        -- library updates: Python 3.8.2, etc
        -- packaging workarounds for setuptools breakage



v3.0.6 (2020-02-05)
======================
        -- fix UDP with Python3
        -- fix key mapping issues with non-X11 clients and non-US layouts
        -- fix notification logging errors during shutdown
        -- fix window stacking order with html5 client and override redirect windows
        -- fix png/P and png/L decoding
        -- fix very slow startup on Debian due to missing libfakeXinerama
        -- fix display scaling notification warning
        -- fix errors generating the tray title string
        -- fix missing webp modules in 'clean' build target
        -- fix some special characters with HTML5 client
        -- fix initiate-moveresize with multiple clients
        -- fix keyboard layout detection with MS Windows 10 clients
        -- fix control commands argument error handling
        -- fix unit tests
        -- fix window repaint issues: system tray, Python 2 non-opengl window spinners
        -- fix server errors during client connection cleanup
        -- fix spacebar and other characters with tablet input devices (ie: mobile browsers)
        -- fix unhelpful backtraces when client application windows are lost
        -- fix MS Windows packaging workarounds for TK
        -- fix for crashes on X11 displays lacking RandR support
        -- fix handling of non 24/32-bit png window icons
        -- fix 'User' not honoured in ssh_config
        -- fix X11 server initiate move-resize
        -- man page connection string fixes
        -- disable cpuinfo module - known to cause problems on various platforms
        -- ignore error and continue when loading version information from invalid builds
        -- prettier format for new connection information
        -- remove executable file permissions on files uploaded to the server
        -- blacklist 'Intel(R) UHD Graphics 620'
        -- use correct location for appdata.xml
        -- use Debian location for systemd service config file
        -- Debian packaging: prefer python3 installations
        -- ensure emacs, gvim and xxdiff always use 'text' mode
        -- re-enable pulseaudio memfd (was wrongly disabled in v3.0.0)
        -- remove remnants of GTK2 dependencies from non-GTK2 components
        -- add missing entry to path information tool


v3.0.5 (2020-01-07)
======================
        -- fix missing undecorated opengl windows on win32 with GTK3 (correct fix)
        -- fix fake Xinerama errors with unicode monitor names
        -- fix av-sync backport for python2 servers
        -- fix errors when the dbus submodule is not installed
        -- fix RFB server key handling
        -- fix exit code for unsupported sockets
        -- fix tray title with openssh and plink SSH backends
        -- fix crashes on win32 shadow exit
        -- fix 'xpra upgrade'
        -- fix focus problems with OR windows
        -- fix wrong client info shown in 'xpra top'
        -- fix 'xpra top' error that scrambled the output, flickering
        -- fix X11 keyboard query against secondary screens
        -- skip trying to load X11 components on non-X11 platforms
        -- allow F11 through to the browser to make it easier to go fullscreen
        -- prevent sshfp dns errors from causing ssh connection failures
        -- obscure passwords from log files
        -- remove duplicated attribute from xpra info
        -- remove unused loggers
        -- expose av-sync and webcam client capabilities
        -- better wayland mode detection
        -- add more missing files to MANIFEST
        -- add v4l2 codec files to clean target
        -- add logging to gtk display cleanup


v3.0.4 (2019-12-19)
======================
        -- fix missing undecorated windows on win32
        -- fix av-sync
        -- fix X11 property synchronization error due to race condition
        -- fix XI2 bindings not loading
        -- fix ssh upgrades wrongly claimed as supported when paramiko is not installed
        -- fix 'wireless' network device detection on Linux
        -- fix 'Sound Buffer' graph
        -- fix errors caused by window title error handler
        -- fix missing 'Packet Encoders' and 'Packet Compressors' with python3 clients
        -- relax RPM dependencies to allow different versions to be installed simultaneously
        -- add missing files to MANIFEST
        -- distinguish certificate verification errors from other ssl errors


v3.0.3 (2019-12-10)
======================
        -- fix clipboard synchronization with HTML5 client
        -- fix window repaints with GTK3
        -- fix GDK scaling causing window painting issues (force off)
        -- fix slow repaint with OpenGL and combined updates (ie: scrolling)
        -- fix missing video screen updates with 32-bit browsers: disable video
        -- fix for X11 applications requesting invalid clipboard targets
        -- fix "xpra top" errors when the terminal window is too small
        -- fix blank xpra dialog windows when closed then shown again (ie: server commands)
        -- fix compilation on non-i386 32-bit platforms
        -- fix platform query errors causing command failures
        -- fix Python2 builds: ignore GTK2 deprecation warnings
        -- fix X11 property synchronization with Python2 builds
        -- fix XSetClassHint call with Python 3
        -- fix window move + resize shortcut
        -- fix ssh proxy options not preserved when loading session files
        -- fix focus of dialogs with MacOS clients (ie: SSH dialogs)
        -- fix error and missing refresh after changing quality or speed settings
        -- fix NVENC error when pynvml is not installed
        -- fix NVENC temporary failure retry code path
        -- fix SSH start for shadow and start-desktop subcommands from MacOS
        -- fix fullscreen / maximized windows on MacOS
        -- fix bogus screen dimensions with GTK3 on MacOS
        -- fix client launcher helper script on MacOS
        -- fix window resizing with OpenGL on MacOS
        -- fix DPI value from the command line with desktop-scaling
        -- fix typo in man page
        -- fix errors with some odd Python3 builds (subprocess.getoutput)
        -- fix cursor packets missing encoding attribute
        -- fix dangling symlink in html5 client Fedora RPM package
        -- fix notification error handling the speaker forwarding error message
        -- fix incorrect and unhelpful message on connection error
        -- fix openssl crypto DLL errors during MS Windows installation
        -- prevent conflict with Fedora downstream packaging of xpra
        -- make it possible to disable colourspace synchronization
        -- show mdns status in xpra info
        -- MacOS library updates (many, including Python 3.8.0)
        -- support CUDA 10.2
        -- disable CSD on MS Windows (GTK3 CSD bug workaround)
        -- re-enable OpenGL on MS Windows (was GTK3 bug)


v3.0.2 (2019-11-05)
======================
        -- fix clipboard synchronization issue with MS Windows clients properly
        -- fix Pillow 6.x compatibility with MS Windows packaging
        -- fix null bytes in X11 error text properly
        -- fix Python 3 servers wrongly re-sending the 'screen' attribute
        -- fix remote logging failures with some message formats
        -- fix lost screen updates
        -- fix GTK scaling causing window geometry issues
        -- fix HTML5 clipboard data sent from polling events
        -- fix CUDA device logging with multiple devices
        -- fix 32-bit build errors on xxhash
        -- fix RPM jpeg and libyuv dependencies
        -- fix OpenGL window not refreshing with Python 3
        -- fix OpenGL context held for too long
        -- fix SSH connection errors when 'port' is specified in the ssh config
        -- fix faac and faad2 security issues in MS Windows and MacOS builds
        -- fix window size hints misapplied with GTK3 on MS Windows and Wayland
        -- disable OpenGL acceleration on old Intel chipsets
        -- disable OpenGL acceleration with GTK3 builds on MS Windows (for now, pending bug)
        -- show python interpreter version on about dialog
        -- re-instante ancient popup window workaround (was disabled by mistake)
        -- don't use av-synchronization for text and picture content types
        -- workaround Fedora packaging causing gratuitious conflicts


v3.0.1 (2019-10-23)
======================
        -- fix clipboard synchronization failures with MS Windows clients
        -- fix window cleanup errors preventing a clean exit
        -- fix launcher error if sharing flag is unset
        -- fix window states wrongly getting reset
        -- fix SSH password dialog lockups on MS Windows
        -- fix authentication module errors (multifile, python3)
        -- fix radio buttons on start server dialog (python3)
        -- fix error in encoding selection fallback (python3)
        -- fix logging error in cups printing backend (python3)
        -- fix null bytes in X11 error text (notifications errors)
        -- fix keyboard debug logging error
        -- fix error querying X11 properties under pure wayland client
        -- fix unresponsive appindicator system tray
        -- fix GDK window scaling setting wrongly propagated to the server
        -- fix compilation on Ubuntu Eoan Ermine
        -- fix file download failures on MS Windows due to invalid characters
        -- fix handling of file download errors
        -- fix Debian bin path warnings
        -- fix error handling in 'xpra top'
        -- fix pyobjc API compatibility in OpenGL transparency shim
        -- fix out of date PKG OS version requirements
        -- fix PKG compatibility with MacOS 10.15 Catalina
        -- fix window border color parsing failures causing errors
        -- fix OpenGL window paint errors with some drivers
        -- make it easier to launch test tools
        -- update Python to 3.7.5 on MacOS
        -- bump revision to override broken Fedora packaging
        -- show Python version in MacOS packages
        -- re-enable tooltips on MS Windows
        -- update to xxhash 0.7.2
        -- consistent use of quotes in endpoint logging


v3.0 (2019-09-21)
======================
        -- Python 3 port complete, now the default: #1571, #2195
        -- much nicer HTML5 client user interface: #2269
        -- Window handling:
                smoother window resizing: #478 (OpenGL)
                honouring gravity: #2217
                lock them in readonly mode: #2137
        -- xpra top subcommand: #2348
        -- faster startup:
                #2347 faster client startup
                #2341 faster server startup
        -- OpenGL:
                more reliable driver probing: #2204
                cursor paint support: #1497
                transparency on MacOS: #1794
        -- Encoding:
                lossless window scrolling: #1320
                scrolling acceleration for non-OpenGL backends: #2295
                harden image parsing: #2279
                workaround slow video encoder initialization (ie: NVENC) using replacement frames: #2048
                avoid loading codecs we don't need: #2344
                skip some CUDA devices, speedup enumeration: #2415
        -- Clipboard:
                new native clipboard implementations for all platforms: #812
                HTML5 asynchronous clipboard: #1844
                HTML5 support for copying images: #2312 (with watermarking)
                brotli compression for text data: #2289
        -- Authentication:
                modular client authentication handlers: #1796
                mysql authentication module: #2287
                generic SQL authentication module: #2288
        -- Network:
                client listen mode: #1022
                retry to connect until it succeeds or times out: #2346
                mdns TXT attributes updated at runtime: #2187
                zeroconf fixes: #2317
                drop pybonjour: #2297
                paramiko honours IdentityFile: #2282, handles SIGINT better: #2378
                proxy server fixes for ssl and ssh sockets: #2399, remove spurious options: #2193
                proxy ping and timeouts: #2408
                proxy dynamic authentication: #2261
        -- Automated Testing:
                test HTML5 client: #2231
                many new mixin tests: #1773 (and bugs found)
        -- start-new-commands is now enabled by default: #2278, and the UI allows free text: #2221
        -- basic support for native GTK wayland client: #2243
        -- forward custom X11 properties: #2311
        -- xpra launcher visual feedback during connection: #1421, sharing option: #2115
        -- "Window" menu on MacOS: #1808


v2.5 (2019-03-19)
======================
        -- Python 3 port mostly complete, including packaging for Debian
        -- pixel compression and bandwidth management:
         - better recovery from network congestion
         - distinguish refresh from normal updates
         - better tuning for mmap connections
         - heuristics improvements
         - use video encoders more aggressively
         - prevent too many delayed frames with x264
         - better video region detection with opengl content
        -- better automatic tuning for client applications
         - based on application categories
         - application supplied hints
         - application window encoding hints
         - using environment variables and disabling video
        -- HTML5 client improvements
        -- Client improvements:
         - make it easier to start new commands, provide start menu
         - probe OpenGL in a subprocess to detect and workaround driver crashes
         - use appindicator if available
        -- Packaging:
         - merge xpra and its dependencies into the ​MSYS2 repository
         - ship fewer files in MS Windows installers
         - partial support for parallel installation of 32-bit and 64-bit version on MS Windows
         - MacOS library updates
         - CentOS 7: libyuv and turbojpeg
         - Windows Services for Linux (WSL) support
         - Fedora 30 and Ubuntu Disco support
         - Ubuntu HWE compatibility (manual steps required due to upstream bug)
        -- Server improvements:
         - start command on last client exit
         - honour minimum window size
         - Python 3
         - upgrade-desktop subcommand
        -- Network layer:
         - less copying
         - use our own websocket layer
         - make it easier to install mdns on MS Windows
         - make mmap group configurable
         - TCP CORK support on Linux
        -- SSH transport:
         - support .ssh/config with paramiko backend
         - connecting via ssh proxy hosts
        -- SSHFP with paramiko:
         - clipboard: restrict clipboard data transfers size
         - audio: support wasapi on MS Windows
        -- code cleanups, etc
        

v2.4 (2018-10-13)
======================
        -- SSH client integration (paramiko)
        -- builtin server support for TCP socket upgrades to SSH (paramiko)
        -- automatic TCP port allocation
        -- expose desktop-sessions as VNC via mdns
        -- add zeroconf backend
        -- register more URL schemes
        -- window content type heuristics configuration
        -- use content type it to better tune automatic encoding selection
        -- automatic video scaling
        -- bandwidth-limit management in video encoders
        -- HTML5 client mpeg1 and h264 decoding
        -- HTML5 client support for forwarding of URL open requests
        -- HTML5 client Internet Explorer 11 compatibility
        -- HTML5 client toolbar improvements
        -- HTML5 fullscreen mode support
        -- limit video dimensions to cap CPU and bandwidth usage
        -- keyboard layout handling fixes
        -- better memory management and resource usage
        -- new default GUI welcome screen
        -- desktop file for starting shadow servers more easily
        -- clipboard synchronization with multiple clients
        -- use notifications bubbles for more important events
        -- workarounds for running under Wayland with GTK3
        -- modal windows enabled by default
        -- support xdg base directory specification and socket file time
        -- improved python3 support (still client only)
        -- multi-window shadow servers on MacOS and MS Windows
        -- buildbot upgrade
        -- more reliable unit tests
        -- fixes and workarounds for Java client applications
        -- locally authenticated users can shutdown proxy servers
        -- restrict potential privileged information leakage
        -- enhanced per-client window filtering
        -- remove extra pixel copy in opengl enabled client
        -- clip pointer events to the actual window content size
        -- new platforms: Ubuntu Cosmic, Fedora 29


v2.3 (2018-05-08)
======================
        -- stackable authentication modules
        -- tcp wrappers authentication module
        -- gss, kerberos, ldap and u2f authentication modules
        -- request access to the session
        -- pulseaudio server per session to prevent audio leaking
        -- better network bandwidth utilization and congestion management
        -- faster encoding and decoding: YUV for webp and jpeg, encoder hints, better vsync
        -- notifications actions forwarding, custom icons, expose warnings
        -- upload notification and management
        -- shadow servers multi window mode
        -- tighter client OS integratioin
        -- client window positioning and multi-screen support
        -- unique application icon used as tray icon
        -- multi stop or attach
        -- control start commands
        -- forward signals sent to windows client side
        -- forward requests to open URLs or files on the server side
        -- html5 client improvements: top bar, debugging, etc
        -- custom http headers, support content security policy
        -- python3 port improvements
        -- bug fixes: settings synchronization, macos keyboard mapping, etc
        -- packaging: switch back to ffmpeg system libraries, support GTK3 on macos
        -- structural improvements: refactoring, fewer synchronized X11 calls, etc


v2.2 (2017-12-11)
======================
        -- support RFB clients (ie: VNC) with bind-rfb or rfb-upgrade options
        -- UDP transport (experimental) with bind-udp and udp://host:port URLs
        -- TCP sockets can be upgrade to Websockets and / or SSL, RFB
        -- multiple bind options for all socket types supported: tcp, ssl, ws, wss, udp, rfb
        -- bandwidth-limit option, support for very low bandwidth connections
        -- detect network performance characteristics
        -- "xpra sessions" browser tool for both mDNS and local sessions
        -- support arbitrary resolutions with Xvfb (not with Xdummy yet)
        -- new OpenGL backends, with support for GTK3 on most platforms
           and window transparency on MS Windows
        -- optimized webp encoding, supported in HTML5 client
        -- uinput virtual pointer device for supporting fine grained scrolling
        -- connection strings now support the standard URI format protocol://host:port/
        -- rencode is now used by default for the initial packet
        -- skip sending audio packets when inactive
        -- improved support for non-us keyboard layouts with non-X11 clients
        -- better modifier key support on Mac OS
        -- clipboard support with GTK3
        -- displayfd command line option
        -- cosmetic system tray menu layout changes
        -- dbus service for the system wide proxy server (stub)
        -- move mmap file to $XDG_RUNTIME_DIR (where applicable)
        -- password prompt dialog in client
        -- fixed memory leaks


v2.1 (2017-07-24)
======================
        -- improve system wide proxy server, logind support on, socket activation
        -- new authentication modules:
                - new posix peercred authentication module (used by system wide proxy)
                - new sqlite authentication module
        -- split packages for RPM, MS Windows and Mac OS
        -- digitally signed MS Windows installers
        -- HTML5 client improvements:
                - file upload support
                - better non-us keyboard and language support
                - safe HMAC authentication over HTTP, re-connection etc
                - more complete window management, (pre-)compression (zlib, brotli)
                - mobile on-screen keyboard
                - audio forwarding for IE
                - remote drag and drop support
        -- better Multicast DNS support, with a GUI launcher
        -- improved image depth / deep color handling
        -- desktop mode can now be resized easily
        -- any window can be made fullscreen (Shift+F11 to trigger)
        -- Python3 GTK3 client is now usable
        -- shutdown the server from the tray menu
        -- terminate child commands on server shutdown
        -- macos library updates: #1501, support for virtual desktops
        -- NVENC SDK version 8 and HEVC support
        -- Nvidia capture SDK support for fast shadow servers
        -- shadow servers improvements: show shadow pointer in opengl client
        -- structural improvements and important bug fixes


v2.0 (2017-03-17)
======================
        -- dropped support for outdated OS and libraries (long list)
        -- 64-bit builds for MS Windows and MacOSX
        -- MS Windows MSYS2 based build system with fully up to date libraries
        -- MS Windows full support for named-pipe connections
        -- MS Windows and MacOSX support for mmap transfers
        -- more configurable mmap options to support KVM's ivshmem
        -- faster HTML5 client, now packaged separately (RPM only)
        -- clipboard synchronization support for the HTML5 client
        -- faster window scrolling detection, bandwidth savings
        -- support more screen bit depths: 8, 16, 24, 30 and 32
        -- support 10-bit per pixel rendering with the OpenGL client backend
        -- improved keyboard mapping support when sharing sessions
        -- faster native turbojpeg codec
        -- OpenGL enabled by default on more chipsets, with better driver sanity checks
        -- better handling of tablet input devices (multiple platforms and HTML5 client)
        -- synchronize Xkb layout group
        -- support stronger HMAC authentication digest modes
        -- unit tests are now executed automatically on more platforms
        -- fix python-lz4 0.9.0 API breakage
        -- fix html5 visual corruption with scroll paint packets


v1.0 (2016-12-06)
======================
        -- SSL socket support
        -- IANA assigned default port 14500 (so specifying the TCP port is now optional)
        -- include a system-wide proxy server service on our default port, using system authentication
        -- MS Windows users can start a shadow server from the start menu, which is also accessible via http
        -- list all local network sessions exposed via mdns using xpra list-mdns
        -- the proxy servers can start new sessions on demand
        -- much faster websocket / http server for the HTML5 client, with SSL support
        -- much improved HTML client, including support for native video decoding
        -- VNC-like desktop support: "xpra start-desktop"
        -- pointer grabs using Shift+Menu, keyboard grabs using Control+Menu
        -- window scrolling detection for much faster compression
        -- server-side support for 10-bit colours
        -- better automatic encoding selection and video tuning, support H264 b-frames
        -- file transfer improvements
        -- SSH password input support on all platforms in launcher
        -- client applications can trigger window move and resize with MS Windows and Mac OS X clients
        -- geometry handling improvements, multi-monitor, fullscreen
        -- drag and drop support between application windows
        -- colour management synchronisation (and DPI, workspace, etc)
        -- the configuration file is now split into multiple logical parts, see /etc/xpra/conf.d
        -- more configuration options for printers
        -- clipboard direction restrictions
        -- webcam improvements: better framerate, device selection menu
        -- audio codec improvements, new codecs, mpeg audio
        -- reliable video support for all Debian and Ubuntu versions via private ffmpeg libraries
        -- use XDG_RUNTIME_DIR if possible, move more files to /run (sockets, log file)
        -- build and packaging improvements: minify during build: rpm "python2", netbsd v4l
        -- selinux policy for printing
        -- Mac OS X PKG installer now sets up ".xpra" file and "xpra:" URL associations
        -- Mac OS X remote shadow start support (though not all versions are supported)


v0.17.5 (2016-07-13)
======================
        -- fix webcam skewed picture
        -- fix size calculations for the 1 pixel bottom edge of video areas
        -- fix heavy import with side effects for shadow servers
        -- fix MS Windows shadow servers picture corruption
        -- fix jpeg wrongly included in auto-refresh encodings
        -- fix compatibility with ffmpeg 3.1+, warn but don't fail
        -- fix socket-dir option not being honoured
        -- fix log dir in commented out Xvfb example
        -- fix build on some non US locales


v0.17.4 (2016-06-27)
======================
        -- fix severe regression in damage handling
        -- fix lossless refresh causing endless loops
        -- fix path stripping during packaging
        -- fix password leak in server log file
        -- fix keyboard layout change handling
        -- fix openSUSE RPM packaging dependencies
        -- fix video region API stickyness
        -- fix application iconification support
        -- fix XShape performance when scaling
        -- fix file transfer packet handling and checksum validation
        -- fix webcam forwarding
        -- fix spurious pulseaudio exit message on shutdown
        -- CUDA 8 and Pascal GPU optimization support
        -- disable webp (black rectangles with some versions)


v0.17.3 (2016-06-03)
======================
        -- fix logging errors with libyuv module (hiding real errors)
        -- fix memory handling in error cases with x264 encoder
        -- fix video encoder and colourspace converter leak
        -- fix rare delta encoding errors
        -- fix dbus x11 dependency in RPM packaging
        -- fix dependencies for RHEL 7.0
        -- fix DPI option miscalculation when used from the client
        -- fix window aspect ratio hints handling
        -- fix stripping of temporary build paths
        -- fix sound subprocess stuck in paused state after an early error
        -- fix H264 decoding in HTML5 client (disabled for now)
        -- fix AES padding errors with HTML5 client
        -- fix spurious import statements in NVENC codecs
        -- fix crashes in X11 keyboard handling
        -- fix compatibility with newer GCC versions
        -- fix OSX and win32 shadow server key mappings
        -- fix OSX shadow server disconnections with invalid RGB packet data
        -- fix OSX shadow server crashes with webp
        -- fix OSX shadow server errors with opus sound codec (disable it)
        -- fix RGB compression algorithm reported in logging


v0.17.2 (2016-05-14)
======================
        -- fix suse leap builds (no python3 because os missing dependencies)
        -- fix aspect-ratio hint handling
        -- fix sound queue state not getting updated
        -- fix socket protocol and family information reported
        -- fix scratchy sound with GStreamer 0.10 (ie: CentOS 6.x)
        -- fix handling of DPI command line switch client side
        -- fix printer requests wrongly honoured when printing is disabled
        -- fix error in websockify error handler
        -- fix missing matroska container on OSX
        -- fix Webcam and GTK info scripts on OSX


v0.17.1 (2016-05-02)
======================
        -- fix SSH error handler
        -- fix SSH connections with tcsh
        -- fix launcher GUI with SSH mode
        -- fix RPM packaging for automatic system installation
        -- fix / workaround bug in Xorg server 1.18.1 and later
        -- fix unhelpful systray GDK warning with some desktop environments
        -- fix duplicate socket paths listed
        -- fix clipboard issues: timeouts and re-enabling from systray
        -- fix frame extents warning message to blame the culprit
        -- fix installation alert message format on Windows XP


v0.17.0 (2016-04-18)
======================
        -- GStreamer 1.6.x on MS Windows and OSX
        -- opus is now the default sound codec
        -- microphone and speaker forwarding no longer cause sound loops
        -- new sound container formats: matroska, gdp
        -- much improved shadow servers, especially for OSX and MS Windows
        -- use newer Plink SSH with Windows Vista onwards
        -- OSX PKG installer, with file association
        -- libyuv codec for faster colourspace conversion
        -- NVENC v6, HEVC hardware encoding
        -- xvid mpeg4 codec
        -- shadow servers now expose a tray icon and menu
        -- improved tablet input device support on MS Windows
        -- improved window geometry handling
        -- OSX dock clicks now restore existing windows
        -- OSX clipboard synchronization menu
        -- new encryption backend: python-cryptography, hardware accelerated AES
        -- the dbus server can now be started automatically
        -- support for using /var/run on Linux and multiple sockets
        -- support for AF_VSOCK virtual networking
        -- broadcast sessions via mDNS on MS Windows and OSX
        -- window geometry fixes
        -- window close event is now configurable, automatically disconnects
        -- webcam forwarding (limited scope)
        -- SELinux policy improvements (still incomplete)
        -- new event based start commands: after connection / on connection
        -- split file authentication module
        -- debug logging and message improvements


v0.16.0 (2015-11-13)
======================
        -- remove more legacy code, cleanups, etc
        -- switch to GStreamer 1.x on most platforms
        -- mostly gapless audio playback
        -- audio-video synchronization
        -- zero copy memoryview buffers (Python 2.7 and later), safer read-only buffers
        -- improved vp9 support
        -- handling of very high client resolutions (8k and above)
        -- more reliable window positioning and geometry
        -- add more sanity checks to codecs and csc modules
        -- network and protocol improvements: safety checks, threading
        -- encryption improvements: support TCP only encryption, PKCS#7 padding
        -- improved printer forwarding
        -- improved DPI and anti-alias synchronization and handling (incomplete)
        -- better multi-monitor support
        -- support for screen capture tools (disabled by default)
        -- automatic desktop scaling to save bandwidth and CPU (upscale on client)
        -- support remote SSH start without specifying a display
        -- support multiple socket directories
        -- lz4 faster modes with automatic speed tuning
        -- server file upload from system tray
        -- new subcommand: "xpra showconfig"
        -- option to select a specific clibpoard to synchronize with (MS Windows only)
        -- faster OpenGL screen updates: group screen updates
        -- dbus server for easier runtime control
        -- replace calls to setxkbmap with native X11 API
        -- XShm for override-redirect windows and shadow servers
        -- faster X11 shadow servers
        -- XShape forwarding for X11 clients
        -- improved logging and debugging tools, fault injection
        -- more robust error handling and recovery from client errors
        -- NVENC support for MS Windows shadow servers


v0.15.8 (2015-11-10)
======================
        -- fix missing files from build clean target
        -- fix unnecessary auto-refresh events
        -- fix x265 encoder
        -- fix libvpx bitrate calculations, reduce logging spam
        -- fix validation of mmap security token
        -- fix handling of file transfers before authentication (disallowed)
        -- fix handling of requests to open files (honour command line / config flag)
        -- fix MS Windows multiple monitor bug (when primary monitor is re-added)
        -- fix video encoding automatic selection for encoders that accept RGB directly
        -- fix the session info sound graphs when sound stops
        -- fix RPM packaging of the cups backend
        -- fix the speed and quality values reported to the clients for x264 encoder
        -- fix OSX El Capitan sound compatibility issue
        -- fix codec import error handler
        -- fix compatibility with Python Pillow 3.0.0 (logging issue)
        -- fix support for Ubuntu Vivid (Xorg still unusable)
        -- fix batch delay heuristics during resizing and queue overload
        -- fix "always batch" mode
        -- fix missing network-send-speed accounting
        -- fix error in override redirect window geometry handling
        -- fix invalid error logging call
        -- fix error in XSettings handling causing connection failures
        -- fix race condition causing corrupted video streams
        -- fix unnecessary double refresh on client decoding error
        -- fix encoding bug triggered when dependencies are missing
        -- fix window size hints handling
        -- support Xorg location and arguments required by Arch Linux
        -- improved lz4 version detection workaround code
        -- support Xft/DPI
        -- safer OSX power event handling code
        -- workaround clients supplying a password when none is required
        -- log OpenGL driver information
        -- clamp desktop size to the maximum screen size
        -- avoid potential errors with bytes-per-pixel confusion with rgb modes
        -- disable workspace support by default (compatibility issues with some WM)
        -- always watch for property changes, even without workspace support
        -- workaround clients supplying a password when none is required
        -- export shadow servers flag
        -- run the window opengl cleanup code


v0.15.7 (2015-10-13)
======================
        -- fix inband info requests
        -- fix monitor hotplugging workaround code
        -- fix OSX menus which should not be shown
        -- fix cursor lookup by name in local theme
        -- fix max-size support on MS Windows
        -- fix max-size handling for windows without any constraints (all platforms)
        -- fix repaint when using the magic key to toggle window borders
        -- fix iconification handling
        -- fix connection error when there are XSettings already present
        -- fix parsing of invalid display structures
        -- fix video region detection after resize
        -- fix vpx quality setting
        -- fix cursor crashes on Ubuntu
        -- don't show opengl toggle menu if opengl is not supported
        -- add new common X11 modes (4k, 5k, etc)
        -- add missing logging category for x265 (fixes warnings on start)


v0.15.6 (2015-09-13)
======================
        -- fix missing auth argument with Xdummy
        -- fix oversize print jobs causing disconnections
        -- fix server-side copy of the client's desktop dimensions
        -- fix X11 client errors when window managers clear the window state
        -- fix spurious warnings if X11 desktop properties are not present
        -- fix server failing to report sound failures (dangling process)
        -- fix paint errors with cairo backing
        -- fix window positioning issues when monitors are added (osx and win32)


v0.15.5 (2015-08-19)
======================
        -- fix encryption not enabled when pycrypto is missing: error out
        -- fix encryption information leak, free network packets after use
        -- fix authentication plugins
        -- fix latency with many sound codecs: vorbis, flac, opus, speex
        -- fix the desktop naming code (worked by accident)
        -- fix OpenGL errors with windows too big for the driver
        -- fix some subcommands when encryption is enabled
        -- fix spurious errors on closed connections
        -- fix incorrect colours using CSC Cython fallback module
        -- fix size limits on Cython fallback module
        -- fix some invalid Xorg dummy modelines
        -- fix aspect ratio not honoured and associated warnings
        -- fix printing file compression
        -- fix errors in packet layer accounting
        -- fix regression in python-lz4 version guessing code
        -- fix RPM packaging: prefer our private libraries to the system ones
        -- fix pactl output parsing
        -- fix error on Posix desktop environments without virtual desktops
        -- fix unlikely connection closing errors
        -- fix value overflows when unpremultiplying alpha channel
        -- ship a default configuration file on OSX
        -- try not to downscale windows from shadow servers
        -- add vpx-xpra to the RPM dependency list so we get VPX 1.9 support
        -- make it possible to generate the EXE installer without running it
        -- allow the user to remove some atoms from _NET_SUPPORTED
        -- show maximum OpenGL texture size in diagnostics and bug reports
        -- minor python3 fixes


v0.15.4 (2015-08-02)
======================
        -- fix delta compression errors
        -- fix VP8 and VP9 performance when speed command line option is used
        -- fix application deadlocks on exit
        -- fix NVENC on cards with over 4GB of RAM
        -- fix csc Cython red and blue colours swapped on little endian systems
        -- fix byteswapping fallback code
        -- fix cleanup error on MS Windows, preventing process termination
        -- fix pulseaudio device count reported
        -- fix timer warnings in GTK2 notifier (mostly used on OSX)
        -- fix sound communication errors not causing subprocess termination
        -- fix Xorg path detection for Fedora 22 onwards
        -- fix invalid list of output colorspaces with x264
        -- fix bug report tool window so it can be used more than once
        -- fix bug report tool log file error with Vista onwards
        -- fix bug report screenshots on MS Windows with multiple screens
        -- fix shadow mode on MS Windows with multiple screens
        -- fix OpenCL csc module with Python3
        -- fix OpenCL platform selection override
        -- fix Python3 Pillow encoding level (must be an integer)
        -- fix capture of subprocesses return code
        -- fix Xvfb dependencies for Ubuntu
        -- fix ldconfig warning on Debian and Ubuntu
        -- fix warnings with X11 desktop environments without virtual desktops
        -- fix use of deprecated ffmpeg enum names
        -- fix client error if built without webp support
        -- include the CUDA pre-compiled kernels on Debian / Ubuntu (NVENC)
        -- packaging fixes for printing on Debian / Ubuntu
        -- updated dependency list for Debian and Ubuntu distros
        -- don't require a nonsensical display name on OSX and win32
        -- safer x264 API initialization call
        -- safer OpenGL platform checks (prevents crashes with wine)
        -- safer NVENC API call
        -- safer lz4 version checking code
        -- workaround invalid "help" options in config files
        -- ensure any client decoding errors cause a window refresh
        -- MS Windows build environment cleanup
        -- Fedora: update PyOpenGL package dependency


v0.15.3 (2015-07-07)
======================
        -- fix invalid X11 atom
        -- fix unhandled failure code from libav
        -- fix default socket permissions when config file is missing
        -- fix error handling for missing cuda kernels
        -- fix OpenGL paint early errors
        -- fix "print" control command with multiple clients
        -- skip sending invalid packet to client for the "name" control command
        -- more helpful dpi warning
        -- support connecting to named unix domain sockets
        -- OpenGL option can force enable despite platform checks
        -- replace unsafe deprecated API call in HTML5 client
        -- more reliable and clean shutdown of connections and threads
        -- log internal system failures as errors


v0.15.2 (2015-06-28)
======================
        -- fix rgb encodings can use speed setting
        -- fix propagation of dynamic attributes for OR windows
        -- fix invalid warnings in parsing client connection options
        -- fix handling of the window decorations flag
        -- fix missing lock around Python logger callback
        -- fix size-hints with shadow servers
        -- fix max-size switch
        -- fix sound process communication errors during failures
        -- fix invalid options shown in default config file
        -- add missing file to clean list
        -- skip unnecessary workarounds with GTK3 client
        -- cleaner thread cleanup on server exit
        -- use the safer and slower code with non-OpenGL clients


v0.15.1 (2015-06-18)
======================
        -- fix window transparency
        -- fix displayfd Xorg version check: require version 1.13
        -- fix GUI debug script on OSX
        -- fix typo in list of supported X11 atoms
        -- fix exit-with-children: support sharing mode
        -- fix html option for client only builds
        -- fix pulseaudio not killed on exit on Ubuntu
        -- fix signal leak when client disconnects
        -- include shared mime info file mapping
        -- blacklist Ubuntu Vivid, which broke Xdummy, again
        -- don't reject clients providing a password when none is expected
        -- raise maximum clipboard requests per second to 20
        -- remove old VP9 performance warnings


v0.15.0 (2015-04-28)
======================
        -- printer forwarding
        -- functional HTML5 client
        -- add session idle timeout switch
        -- add html command line switch for easily setting up an HTML5 xpra server
        -- dropped support for Python 2.5 and older, allowing many code cleanups and improvements
        -- include manual in html format with MS Windows and OSX builds
        -- add option to control socket permissions (easier setup of containers)
        -- client log output forwarding to the server
        -- fixed workarea coordinates detection for MS Windows clients
        -- improved video region detection and handling
        -- more complete support for window states (keep above, below, sticky, etc..) and general window manager responsabilities
        -- allow environment variables passed to children to be specified in the config files
        -- faster reformatting of window pixels before compression stage
        -- support multiple delta regions and expire them (better compression)
        -- allow new child commands to be started on the fly, also from the client's system tray (disabled by default)
        -- detect mismatch between some codecs and their shared library dependencies
        -- NVENC SDK support for versions 4 and 5, YUV444 and lossless mode
        -- libvpx support for vp9 lossless mode, much improved performance tuning
        -- add support for child commands that do not interfere with "exit-with-children"
        -- add scaling command line and config file switch for controlling automatic scaling aggressiveness
        -- sound processing is now done in a separate process (lower latency, and more reliable)
        -- add more control over sound command line options, so sound can start disabled and still be turned on manually later
        -- add command line option for selecting the sound source (pulseaudio, alsa, etc)
        -- show sound bandwidth usage
        -- better window icon forwarding, especially for non X11 clients
        -- optimized OpenGL rendering for X11 clients
        -- handle screen update storms better
        -- window group-leader support on MS Windows (correct window grouping in the task bar)
        -- GTK3 port improvements (still work in progress)
        -- added unit tests which are run automatically during packaging
        -- more detailed information in xpra info (cursor, CPU, connection, etc)
        -- more detailed bug report information
        -- more minimal MS Windows and OSX builds


v0.14.0 (2014-08-14)
======================
        -- support for lzo compression
        -- support for choosing the compressors enabled (lz4, lzo, zlib)
        -- support for choosing the packet encoders enabled (bencode, rencode, yaml)
        -- support for choosing the video decoders enabled
        -- built in bug report tool, capable of collecting debug information
        -- automatic display selection using Xorg "-displayfd"
        -- better video region support, increased quality for non-video regions
        -- more reliable exit and cleanup code, hooks and notifications
        -- prevent SSH timeouts on login password or passphrase input
        -- automatic launch the correct tool on MS Windows
        -- OSX: may use the Application Services folder for a global configuration
        -- removed python-webm, we now use the native cython codec only
        -- OpenCL: warn when AMD icd is present (causes problems with signals)
        -- better avahi mDNS error reporting
        -- better clipboard compression support
        -- better packet level network tuning
        -- support for input methods
        -- xpra info cleanups and improvments (show children, more versions, etc)
        -- integrated keyboard layout detection on *nix
        -- upgrade and shadow now ignore start child
        -- improved automatic encoding selection, also faster
        -- keyboard layout selection via system tray on *nix
        -- more Cython compile time optimizations
        -- some focus issues fixed


v0.13.9 (2014-08-13)
======================
        -- fix clipboard on OSX
        -- fix remote ssh start with start-child issues
        -- use secure "compare_digest" if available
        -- fix crashes in codec cleanup
        -- fix video encoding fallback code
        -- fix fakeXinerama setup wrongly skipped in some cases
        -- fix connection failures with large screens and uncompressed RGB
        -- fix Ubuntu trustyi Xvfb configuration
        -- fix clipboard errors with no data
        -- fix opencl platform initialization errors


v0.13.8 (2014-08-06)
======================
        -- fix server early exit when pulseaudio terminates
        -- fix SELinux static codec library label (make it persistent)
        -- fix missed auto-refresh when batching
        -- fix disabled clipboard packets coming through
        -- fix cleaner client connection shutdown sequence and exit code
        -- fix resource leak on connection error
        -- fix potential bug in fallback encoding selection
        -- fix deadlock on worker race it was meant to prevent
        -- fix remote ssh server start timeout
        -- fix avahi double free on exit
        -- fix png and jpeg painting via gdk pixbuf (when PIL is missing)
        -- fix webp refresh loops
        -- honour lz4-off environment variable
        -- fix proxy handling of raw RGB data for large screen sizes
        -- fix potential error from missing data in client packets


v0.13.7 (2014-07-10)
======================
        -- fix x11 server pixmap memory leak
        -- fix speed and quality values range (1 to 100)
        -- fix nvenc device allocation errors
        -- fix unnecessary refreshes with nvenc
        -- fix "initenv" compatibility with older servers
        -- don't start child when upgrading or shadowing


v0.13.6 (2014-06-14)
======================
        -- fix compatibility older versions of pygtk (centos5)
        -- fix compatibility with python 2.4 (centos5)
        -- fix AltGr workaround with win32 clients
        -- fix some missing keys with 'fr' keyboard layout (win32)
        -- fix installation on systems without python-glib (centos5)
        -- fix Xorg version detection for Fedora rawhide


v0.13.5-3 (2014-06-14)
======================
        -- re-fix opengl compatibility


v0.13.5 (2014-06-13)
======================
        -- fix use correct dimensions when evaluating video
        -- fix invalid latency statistics recording
        -- fix auto-refresh wrongly cancelled
        -- fix connection via nested ssh commands
        -- fix statically linked builds of swscale codec
        -- fix system tray icons when upgrading server
        -- fix opengl compatibility with older libraries
        -- fix ssh connection with shells not starting in home directory
        -- fix keyboard layout change forwarding


v0.13.4 (2014-06-10)
======================
        -- fix numeric keypad period key mapping on some non-us keyboards
        -- fix client launcher GUI on OSX
        -- fix remote ssh start with clean user account
        -- fix remote shadow start with automatic display selection
        -- fix avoid scaling during resize
        -- fix changes of speed and quality via xpra control (make it stick)
        -- fix xpra info global batch statistics
        -- fix focus issue with some applications
        -- fix batch delay use


v0.13.3 (2014-06-05)
======================
        -- fix xpra upgrade
        -- fix xpra control error handling
        -- fix window refresh on inactive workspace
        -- fix slow cursor updates
        -- fix error in rgb strict mode
        -- add missing x11 server type information


v0.13.2 (2014-06-01)
======================
        -- fix painting of forwarded tray
        -- fix initial window workspace
        -- fix launcher with debug option in config file
        -- fix compilation of x265 encoder
        -- fix infinite recursion in cython csc module
        -- don't include sound utilities when building without sound


v0.13.1 (2014-05-28)
======================
        -- honour lossless encodings
        -- fix avcodec2 build for Debian jessie and sid
        -- fix pam authentication module
        -- fix proxy server launched without a display
        -- fix xpra info data format (wrong prefix)
        -- fix transparency with png/L mode
        -- fix loss of transparency when toggling OpenGL
        -- fix re-stride code for compatibility with ancient clients
        -- fix timer reference leak causing some warnings


v0.13.0 (2014-05-22)
======================
        -- Python3 / GTK3 client support
        -- NVENC module included in binary builds
        -- support for enhanced dummy driver with DPI option
        -- better build system with features auto-detection
        -- removed unsupported CUDA csc module
        -- improved buffer support
        -- faster webp encoder
        -- improved automatic encoding selection
        -- support running MS Windows installer under wine
        -- support for window opacity forwarding
        -- fix password mode in launcher
        -- edge resistance for automatic image downscaling
        -- increased default memory allocation of the dummy driver
        -- more detailed version information and tools
        -- stricter handling of server supplied values


v0.12.6 (2014-05-16)
======================
        -- fix invalid pixel buffer size causing encoding failures
        -- fix auto-refresh infinite loop, and honour refresh quality
        -- fix sound sink with older versions of GStreamer plugins
        -- fix Qt applications crashes caused by a newline in xsettings..
        -- fix error with graphics drivers only supporting OpenGL 2.x only
        -- fix OpenGL crash on OSX with the Intel driver (now blacklisted)
        -- fix global menu entry text on OSX
        -- fix error in cairo backing cleanup
        -- fix RGB pixel data buffer size (re-stride as needed)
        -- avoid buggy swscale 2.1.0 on Ubuntu


v0.12.5 (2014-05-03)
======================
        -- fix error when clients supply invalid screen dimensions
        -- fix MS Windows build without ffmpeg
        -- fix cairo backing alternative
        -- fix keyboard and sound test tools initialization and cleanup
        -- fix gcc version test used for enabling sanitizer build options
        -- fix exception handling in client when called from the launcher
        -- fix libav dependencies for Debian and Ubuntu builds


v0.12.4 (2014-04-23)
======================
        -- fix xpra shadow subcommand
        -- fix xpra shadow keyboard mapping support for non-posix clients
        -- avoid Xorg dummy warning in log


v0.12.3 (2014-04-09)
======================
        -- fix mispostioned windows
        -- fix quickly disappearing windows (often menus)
        -- fix server errors when closing windows
        -- fix NVENC server initialization crash with driver version mismatch
        -- fix rare invalid memory read with XShm
        -- fix webp decoder leak
        -- fix memory leak on client disconnection
        -- fix focus errors if windows disappear
        -- fix mmap errors on window close
        -- fix incorrect x264 encoder speed reported via "xpra info"
        -- fix potential use of mmap as an invalid fallback for video encoding
        -- fix logging errors in debug mode
        -- fix timer expired warning


v0.12.2 (2014-03-30)
======================
        -- fix switching to RGB encoding via client tray
        -- fix remote server start via SSH
        -- fix workspace change detection causing slow screen updates


v0.12.1 (2014-03-27)
======================
        -- fix 32-bit server timestamps
        -- fix client PNG handling on installations without PIL / Pillow


v0.12.0 (2014-03-23)
======================
        -- NVENC support for YUV444 mode, support for automatic bitrate tuning
        -- NVENC and CUDA load balancing for multiple cards
        -- proxy encoding: ability to encode on proxy server
        -- fix fullscreen on multiple monitors via fakeXinerama
        -- OpenGL rendering improvements (for transparent windows, etc)
        -- support window grabs (drop down menus, etc)
        -- support specifying the SSH port number more easily
        -- enabled TCP_NODELAY socket option by default (lower latency)
        -- add ability to easily select video encoders and csc modules
        -- add local unix domain socket support to proxy server instances
        -- add "xpra control" commands to control encoding speed and quality
        -- improved handling of window resizing
        -- improved compatibility with command line tools (xdotool, wmctrl)
        -- ensure windows on other workspaces do not waste bandwidth
        -- ensure iconified windows do not waste bandwidth
        -- ensure maximized and fullscreen windows are prioritised
        -- ensure we reset xsettings when client disconnects
        -- better bandwidth utilization of jittery connections
        -- faster network code (larger receive buffers)
        -- better automatic encoding selection for smaller regions
        -- improved command line options (add ability to enable options which are disabled in the config file)
        -- trimmed all the ugly PyOpenGL warnings on startup
        -- much improved logging and debugging tools
        -- make it easier to distinguish xpra windows from local windows (border command line option)
        -- improved build system: smaller and more correct build output (much smaller OSX images)
        -- improved MS Windows command wrappers
        -- improved MS Windows (un)installer checks
        -- automatically stop remote shadow servers when client disconnects
        -- MS Windows and OSX build updates: updated Pillow, lz4, etc


v0.11.6 (2014-03-18)
======================
        -- correct fix for system tray forwarding


v0.11.5 (2014-03-18)
======================
        -- fix "xpra info" with bencoder
        -- ensure we re-sanitize window size hints when they change
        -- workaround applications with nonsensical size hints (ie: handbrake)
        -- fix 32-bit painting with GTK pixbuf loader (when PIL is not installed or disabled)
        -- fix system tray forwarding geometry issues
        -- fix workspace restore
        -- fix compilation warning
        -- remove spurious cursor warnings


v0.11.4 (2014-02-29)
======================
        -- fix NVENC GPU memory leak
        -- fix video compatibility with ancient clients
        -- fix vpx decoding in ffmpeg decoders
        -- fix transparent system tray image with RGB encoding
        -- fix client crashes with system tray forwarding
        -- fix webp codec loader error handler


v0.11.3 (2014-02-14)
======================
        -- fix compatibility with ancient versions of GTK
        -- fix crashes with malformed socket names
        -- fix server builds without client modules
        -- honour mdns flag set in config file
        -- blacklist VMware OpenGL driver which causes client crashes
        -- ensure all "control" subcommands run in UI thread


v0.11.2 (2014-01-29)
======================
        -- fix Cython 0.20 compatibility
        -- fix OpenGL pixel upload alignment code
        -- fix xpra command line help page tokens
        -- fix compatibility with old versions of the python glib library


v0.11.1 (2014-01-24)
======================
        -- fix compatibility with old/unsupported servers
        -- fix shadow mode
        -- fix paint issue with transparent tooltips on OSX and MS Windows
        -- fix pixel format typo in OpenGL logging


v0.11.0 (2014-01-20)
======================
        -- NVENC hardware h264 encoding acceleration
        -- OpenCL and CUDA colourspace conversion acceleration
        -- proxy server mode for serving multiple sessions through one port
        -- support for sharing a TCP port with a web server
        -- server control command for modifying settings at runtime
        -- server exit command, which leaves Xvfb running
        -- publish session via mDNS
        -- faster OSX shadow server
        -- OSX client two way clipboard support
        -- OSX keyboard improvements, swap command and control keys
        -- support for transparency with OpenGL window rendering
        -- support for transparency with 8-bit PNG modes
        -- support for more authentication mechanisms
        -- support remote shadow start via ssh
        -- support faster lz4 compression
        -- faster bencoder, rewritten in Cython
        -- builtin fallback colourspace conversion module
        -- real time frame latency graphs
        -- improved system tray forwarding support and native integration
        -- removed most of the Cython/C code duplication
        -- stricter and safer value parsing
        -- more detailed status information via UI and "xpra info"
        -- experimental HTML5 client
        -- drop non xpra clients with a more friendly response
        -- handle non-ASCII characters in output on MS Windows
        -- libvpx 1.3 and ffmpeg 2.1.3 for OSX, MS Windows and static builds


v0.10.12 (2014-01-14)
======================
        -- fix missing auto-refresh with lossy colourspace conversion
        -- fix spurious warning from Nvidia OpenGL driver
        -- fix OpenGL client crash with some drivers (ie: VirtualBox)
        -- fix crash in bencoder caused by empty data to encode
        -- fix OSX popup focus issue
        -- fix ffmpeg2 h264 decoding (ie: Fedora 20+)
        -- big warnings about webp leaking memory
        -- generated debuginfo RPMs


v0.10.11 (2014-01-07)
======================
        -- fix popup windows focus issue
        -- fix "xpra upgrade" subcommand
        -- fix server backtrace in error handler
        -- restore server target information in tray tooltip
        -- fix bencoder error with no-windows switch (missing encoding)
        -- add support for RGBX pixel format required by some clients
        -- avoid ffmpeg "data is not aligned" warning on client
        -- ensure x264 encoding is supported on MS Windows shadow servers


v0.10.10 (2013-12-04)
======================
        -- fix focus regression
        -- fix MS Windows clipboard copy including null byte
        -- fix h264 decoding with old versions of avcodec
        -- fix potential invalid read past the end of the buffer
        -- fix static vpx build arguments
        -- fix RGB modes exposed for transparent windows
        -- fix crash on clipboard loops: detect and disable clipboard
        -- support for ffmpeg version 2.x
        -- support for video encoding of windows bigger than 4k
        -- support video encoders that re-start the stream
        -- fix crash in decoding error path
        -- forward compatibility with namespace changes
        -- forward compatibility with the new generic encoding names


v0.10.9 (2013-11-05)
======================
        -- fix h264 decoding of padded images
        -- fix plain RGB encoding with very old clients
        -- fix "xpra info" error when old clients are connected
        -- remove warning when "help" is specified as encoding


v0.10.8 (2013-10-22)
======================
        -- fix misapplied patch breaking all windows with transparency


v0.10.7 (2013-10-22)
======================
        -- fix client crash on Linux with AMD cards and fglrx driver
        -- fix MS Windows tray forwarding (was broken by fix from 0.10.6)
        -- fix missing WM_CLASS on X11 clients
        -- fix Mac OSX shadow server
        -- fix "xpra info" on shadow servers
        -- add usable 1366x768 dummy resolution


v0.10.6 (2013-10-15)
======================
        -- fix window titles reverting to "unknown host"
        -- fix tray forwarding bug causing client disconnections
        -- replace previous rencode fix with warning


v0.10.5 (2013-10-10)
======================
        -- fix client time out when the initial connection fails
        -- fix shadow mode
        -- fix connection failures when some system information is missing
        -- fix client disconnection requests
        -- fix encryption cipher error messages
        -- fix client errors when some features are disabled
        -- fix potential rencode bug with unhandled data types
        -- error out if the client requests authentication and none is available


v0.10.4 (2013-09-10)
======================
        -- fix modifier key handling (was more noticeable with MS Windows clients)
        -- fix auto-refresh


v0.10.3 (2013-09-06)
======================
        -- fix transient windows with no parent
        -- fix metadata updates handling (maximize, etc)


v0.10.2 (2013-08-29)
======================
        -- fix connection error with unicode user name
        -- fix vpx compilation warning
        -- fix python 2.4 compatibility
        -- fix handling of scaling attribute via environment override
        -- build fix: ensure all builds include source information


v0.10.1 (2013-08-20)
======================
        -- fix avcodec buffer pointer errors on some 32-bit Linux
        -- fix invalid time convertion
        -- fix OpenGL scaling with fractions
        -- compilation fix for some newer versions of libav
        -- disable OpenGL on Ubuntu 12.04 and earlier (non functional)
        -- honour scaling at high quality settings
        -- add ability to disable transparency via environment variable
        -- silence PyOpenGL warnings we can do nothing about
        -- fix CentOS 6.3 packaging dependencies


v0.10.0 (2013-08-13)
======================
        -- performance: X11 shared memory (XShm) pixels transfers
        -- performance: zero-copy window pixels to picture encoders
        -- performance: zero copy decoded pixels to window (but not with OpenGL..)
        -- performance: multi-threaded x264 encoding and decoding
        -- support for speed tuning (latency vs bandwidth) with more encodings (png, jpeg, rgb)
        -- support for grayscale and palette based png encoding
        -- support for window and tray transparency
        -- support webp lossless
        -- support x264's "ultrafast" preset
        -- support forwarding of group-leader application window information
        -- prevent slow encoding from creating backlogs
        -- OpenGL accelerated client rendering enabled by default wherever supported
        -- register as a generic URL handler
        -- fullscreen toggle support
        -- stricter Cython code
        -- better handling of sound buffering and overruns
        -- better OSX support, handle UI stalls more gracefully, system trays
        -- experimental support for a Qt based client
        -- support for different window layouts with custom widgets
        -- basic support of OSX shadow servers
        -- don't try to synchronize with clipboards that do not exist (for shadow servers mostly)
        -- refactoring: move features and components to sub-modules
        -- refactoring: split X11 bindings from pure gtk code
        -- refactoring: codecs split encoding and decoding side
        -- refactoring: move more common code to utility classes
        -- refactoring: remove direct dependency on gobject in many places
        -- refactoring: platform code better separated
        -- refactoring: move wimpiggy inside xpra, delete parti
        -- export and expose more version information (x264/vpx/webp/PIL, OpenGL..)
        -- export compiler information with build (Cython, C compiler, etc)
        -- export much more debugging information about system state and statistics
        -- simplify non-UI subcommands and their packets, also use rencode ("xpra info", "xpra version", etc)


v0.9.8 (2013-07-29)
======================
        -- fix client workarea size change detection (again)
        -- fix crashes handling info requests
        -- fix Ubuntu raring clients: must use Xvfb
        -- fix server hangs due to sound cleanup deadlock
        -- use lockless window video decoder cleanup (much faster)
        -- speedup server startup when no XAUTHORITY file exists yet


v0.9.7 (2013-07-16)
======================
        -- fix error in sound cleanup code
        -- fix network threads accounting
        -- fix missing window icons
        -- fix client availability of remote session start feature


v0.9.6 (2013-06-30)
======================
        -- fix client exit lockups on MS Windows
        -- fix lost clicks on some popup menus (mostly with MS Windows clients)
        -- fix client workarea size change detection
        -- fix reading of unique "machine-id" on posix
        -- fix window reference leak for windows we fail to manage
        -- fix compatibility with pillow (PIL fork)
        -- fix session-info window graphs jumping (smoother motion)
        -- fix webp loading code for non-Linux posix systems
        -- fix window group-leader attribute setting
        -- fix man page indentation
        -- fix variable test vs use (correctness only)
        -- static binary builds updates: Python 2.7.5, flac 1.3, PyOpenGL 3.1, numpy 1.7.1, webp 0.3.1, libav 9.7
        -- static binary builds switched to using pillow instead of PIL
        -- forward compatibility with future "xpra info" namespace changes


v0.9.5 (2013-06-06)
======================
        -- fix auto-refresh: don't refresh unnecessarily
        -- fix wrong initial timeout when ssh takes a long time to connect
        -- fix client monitor/resolution size change detection
        -- fix attributes reported to clients when encoding overrides are used
        -- Gentoo ebuild uses virtual to allow one to choose pillow or PIL


v0.9.4 (2013-05-27)
======================
        -- revert cursor scaling fix which broke other applications
        -- fix auto refresh mis-firing
        -- fix type (atom) of the X11 visual property we expose


v0.9.3 (2013-05-20)
======================
        -- fix clipboard for *nix clients
        -- fix selection timestamp parsing
        -- fix crash due to logging code location
        -- fix pixel area request dimensions for lossless edges
        -- fix advertized tray visual property
        -- fix cursors are too small with some applications
        -- fix crash when low level debug code is enabled
        -- reset cursors when disabling cursor forwarding
        -- workaround invalid window size hints


v0.9.2 (2013-05-13)
======================
        -- fix double error when loading build information (missing about dialog)
        -- fix and simplify build "clean" subcommand
        -- fix OpenGL rendering alignment for padded rowstrides case
        -- fix potential double error when tray initialization fails
        -- fix window static properties usage


v0.9.1 (2013-05-08)
======================
        -- honour initial client window's requested position
        -- fix for hidden appindicator
        -- fix string formatting error in non-cython fallback math code
        -- fix error if ping packets fail from the start
        -- fix for windows without a valid window-type (ie: shadows)
        -- fix OpenGL missing required feature detection (and add debug)
        -- add required CentOS RPM libXfont dependency
        -- tag our /etc configuration files in RPM spec file


v0.9.0 (2013-04-25)
======================
        -- fix focus problems with old Xvfb display servers
        -- fix RPM SELinux labelling of static codec builds (CentOS)
        -- fix CentOS 5.x compatibility
        -- fix Python 2.4 and 2.5 compatibility (many)
        -- fix clipboard with MS Windows clients
        -- fix failed server upgrades killing the virtual display
        -- fix screenshot command with "OR" windows
        -- fix support for "OR" windows that move and resize
        -- IPv6 server support
        -- support for many more audio codecs: flac, opus, wavpack, wav, speex
        -- support starting remote sessions with "xpra start"
        -- support for Xdummy with CentOS 6.4 onwards
        -- add --log-file command line option
        -- add clipboard regex string filtering
        -- add clipboard transfer in progress animation via system tray
        -- detect broken/slow connections and temporarily grey out windows
        -- reduce regular packet header sizes using numeric lookup tables
        -- allow more options in xpra config and launcher files
        -- MS Windows fixes for Caps Lock and Num Lock synchronization
        -- MS Windows and OSX builds trim the amount of GStreamer plugins shipped
        -- MS Windows, OSX and static codec builds (Ubuntu Lucid, Debian Squeeze) updated to libav 9.4
        -- MS Windows and OSX builds updated to use Python 2.7.4
        -- MS Windows library updates (pyasn1, numpy, webp)
        -- OSX library updates (mpfr, x264, pyasn1, numpy, webp), fixed sound packaging
        -- safer test for windows to ignore (window IDs starts at 1 again)
        -- expose more version and statistical data via xpra info
        -- improved OpenGL client rendering (still disabled by default)
        -- upgrade to rencode 1.0.2


v0.8.8 (2013-03-07)
======================
        -- fix server deadlock on dead connections
        -- fix compatibility with older versions of Python
        -- fix sound capture script usage via command line
        -- fix screen number preserve code
        -- fix error in logs in shadow mode


v0.8.7 (2013-02-27)
======================
        -- fix x264 crash with older versions of libav
        -- fix 32-bit builds breakage introduce by python2.4 fix in 0.8.6
        -- fix missing sound forwarding when using the GUI launcher
        -- fix microphone forwarding errors
        -- fix client window properties store
        -- fix first workspace not preserved and other workspace issues
        -- fix GStreamer-Info.exe output
        -- avoid creating unused hidden "group" windows on MS Windows clients


v0.8.6 (2013-02-22)
======================
        -- fix launcher on MS Windows, better SSH support
        -- fix python2.4 compatibility in icon grabbing code
        -- fix libav compatibility on MS Windows with VisualStudio
        -- fix exit message location
        -- prevent invalid Python bindings version from being included in the MS Windows installer


v0.8.5 (2013-02-17)
======================
        -- fix server crash with transient windows


v0.8.4 (2013-02-13)
======================
        -- fix hello packet encoding bug
        -- fix colours in launcher and session-info windows


v0.8.3 (2013-02-12)
======================
        -- Python 2.4 compatiblity fixes (CentOS 5.x)
        -- fix static builds of vpx and x264


v0.8.2 (2013-02-10)
======================
        -- fix libav uninitialized structure crash
        -- fix warning on installations without sound libraries
        -- fix warning when pulseaudio utils are not installed
        -- fix delta compression race
        -- fix the return of some ghost windows
        -- stop pulseaudio on exit, warn if it fails to start
        -- re-enable system tray forwarding, fix location conflicts
        -- osx fixes: encodings wrongly grayed out
        -- osx features: add sound and speed menus
        -- remove spurious "too many receivers" warnings


v0.8.1 (2013-02-04)
======================
        -- fix server daemonize on some platforms
        -- fix server SSH support on platforms with old versions of glib
        -- fix "xpra upgrade" closing applications
        -- fix detection of almost-lossless frames with x264
        -- fix starting of a duplicate pulseaudio server on upgrade
        -- fix debian packaging: lint warnings, add missing sound dependencies
        -- fix compatibility with older versions of pulseaudio (pactl)
        -- fix session-info window when a tray is being forwarded
        -- remove warning on builds with limited encoding support
        -- disable tray forwarding by default as it causes problems with some apps
        -- rename "Quality" to "Min Quality" in tray menu
        -- update to Cython 0.18 for binary builds
        -- fix rpm packaging: remove unusable modules


v0.8.0 (2013-01-31)
======================
        -- fix modal windows support
        -- fix default mouse cursor: now uses the client's default cursor
        -- fix "double-apple" in menu on OSX
        -- fix short lived windows: avoid doing unnecessary work, avoid re-registering handlers
        -- fix limit the number of raw packets per client to prevent DoS via memory exhaustion
        -- fix authentication: ensure salt is per connection
        -- fix for ubuntu global application menus
        -- fix proxy handling of deadly signals
        -- fix pixel queue size calculations used for performance tuning decisions
        -- fix ^C exit on MS Windows: ensure we do cleanup the system tray on exit
        -- edge resistance for colourspace conversion level changes to prevent yoyo effect
        -- more aggressive picture quality tuning
        -- better CPU utilization
        -- new command line options and tray menu to trade latency for bandwidth
        -- x264 disable unecessary I-frames and avoid IDR frames
        -- performance and latency optimizations in critical sections
        -- avoid server loops: prevent the client from connecting to itself
        -- group windows according to the remote application they belong to
        -- sound forwarding (initial code, high latency)
        -- faster and more reliable client and server exit (from signal or otherwise)
        -- SSH support on MS Windows
        -- "xpra shadow" mode to clone an existing X11 display (compositors not supported yet)
        -- support for delta pixels mode (most useful for shadow mode)
        -- avoid warnings and X11 errors with the screenshot command
        -- better mouse cursor support: send cursors by name so their size matches the client's settings
        -- mitigate bandwidth eating cursor change storms: introduce simple cursor update batching
        -- support system tray icon forwarding (limited)
        -- preserve window workspace
        -- AES packet encryption for TCP mode (without key secure exchange for now)
        -- launcher entry box for username in SSH mode
        -- launcher improvements: highlight the password field if needed, prevent warnings, etc
        -- better window manager specification compatibility (for broken applications or toolkits)
        -- use lossless encoders more aggressively when possible
        -- new x264 tuning options: profiles to use and thresholds
        -- better detection of dead server sockets: retry and remove them if needed
        -- improved session information dialog and graphs
        -- more detailed hierarchical per-window details via "xpra info"
        -- send window icons in dedicated compressed packet (smaller new-window packets, faster)
        -- detect overly large main packets
        -- partial/initial Java/AWT keyboard support
        -- py2exe, ebuild and distutils improvements: faster and cleaner builds, discarding unwanted modules
        -- OSX and MS Windows build updates: newer py2app, gtk-mac-bundler, pywin32 and support libraries
        -- OSX command line path fix
        -- updated libx264 and libav on OSX
        -- updated Cython to 0.17.4 for all binary builds


v0.7.8 (2013-01-15)
======================
        -- fix xsettings integer parsing
        -- fix 'quality' command line option availability check
        -- workaround Ubuntu's global menus
        -- better compatibility with old servers: don't send new xsettings format
        -- avoid logging for normal "clipboard is disabled" case


v0.7.7 (2013-01-03)
======================
        -- fix quality menu
        -- fix for clients not using rencoder (ie: Java, Android..)
        -- fix pixel queue size accounting


v0.7.6 (2013-01-01)
======================
        -- fix tray options meant to be unusable until connected
        -- fix auto refresh delay
        -- fix missing first bell in error case
        -- fix potential DoS in client disconnection accounting
        -- fix network calls coming from wrong thread in error case
        -- fix unlikely locking issue and reduce lock hold time
        -- fix disconnect all connected clients cleanly
        -- fix clipboard flag handling
        -- fix Mac OSX path with spaces handling
        -- fix server minimum window dimensions with video encoders
        -- don't bother trying to auto-refresh in lossless modes


v0.7.5 (2012-12-06)
======================
        -- fix crash on empty keysym
        -- fix potential division by zero
        -- fix network queue access from invalid thread
        -- fix cleanup code on upgrade corner cases
        -- fix keyboard layout change detection
        -- try harder to apply keymaps when the number of free keycodes are limited


v0.7.4 (2012-11-16)
======================
        -- avoid crash with configure events on windows being destroyed
        -- fix 100% cpu usage with python2.6 server started with no child


v0.7.3 (2012-11-08)
======================
        -- fix crash with unknown X11 keysyms
        -- avoid error with focus being given to a destroyed window
        -- honour window aspect ratio


v0.7.2 (2012-11-07)
======================
        -- fix version string hiding ssh password prompt
        -- fix focus handling for applications setting XWMHints.input to False (ie: Java)
        -- fix ssh shared connection mode: do not kill it on Ctrl-C
        -- fix sanitization of aspect ratio hints
        -- fix undefined variable exception in window setup/cleanup code
        -- fix undefined variable exception in window damage code
        -- fix dimensions used for calculating the optimal picture encoding
        -- reduce Xdummy memory usage by limitting to lower maxmimum resolutions


v0.7.1 (2012-10-21)
======================
        -- fix division by zero in graphs causing displayed information to stall
        -- fix multiple tray shown when using the launcher and password authentication fails
        -- fix override redirect windows cleanup code
        -- fix keyboard mapping for AltGr with old versions of X11 server
        -- fix for Mac OSX zero keycode (letter 'a')
        -- fix for invalid modifiers: try harder to apply valid mappings
        -- fix gtk import warning with text clients (xpra version, xpra info)


v0.7.0 (2012-10-08)
======================
        -- Mac DMG client download
        -- Android APK download
        -- fix "AltGr" key handling with MS Windows clients (and others)
        -- fix crash with x264 encoding
        -- fix crash with fast disappearing tooltip windows
        -- avoid storing password in a file when using the launcher (except on MS Windows)
        -- many latency fixes and improvements: lower latency, better line congestion handling, etc
        -- lower client latency: decompress pictures in a dedicated thread (including rgb24+zlib)
        -- better launcher command feedback
        -- better automatic compression heuristics
        -- support for Xdummy on platforms with only a suid binary installed
        -- support for 'webp' lossy picture encoding (better and faster than jpeg)
        -- support fixed picture quality with x264, webp and jpeg (via command line and tray menu)
        -- support for multiple "start-child" options in config files or command line
        -- more reliable auto-refresh
        -- performance optimizations: caching results, avoid unnecessary video encoder re-initialization
        -- faster re-connection (skip keyboard re-configuration)
        -- better isolation of the virtual display process and child processes
        -- show performance statistics graphs on session info dialog (click to save)
        -- start with compression enabled, even for initial packet
        -- show more version and client information in logs and via "xpra info"
        -- client launcher improvements: prevent logging conflict, add version info
        -- large source layout cleanup, compilation warnings fixed


v0.6.4 (2012-10-05)
======================
        -- fix bencoder to properly handle dicts with non-string keys
        -- fix swscale bug with windows that are too small by switch encoding
        -- fix locking of video encoder resizing leading to missing video frames
        -- fix crash with compression turned off: fix unicode encoding
        -- fix lack of locking sometimes causing errors with "xpra info"
        -- fix password file handling: exceptions and ignore carriage returns
        -- prevent races during setup and cleanup of network connections
        -- take shortcut if there is nothing to send


v0.6.3 (2012-09-27)
======================
        -- fix memory leak in server after client disconnection
        -- fix launcher: clear socket timeout once connected and add missing options
        -- fix potential bug in network code (prevent disconnection)
        -- enable auto-refresh by default since we now use a lossy encoder by default


v0.6.2 (2012-09-25)
======================
        -- fix missing key frames with x264/vpx: always reset the video encoder when we skip some frames (forces a new key frame)
        -- fix server crash on invalid keycodes (zero or negative)
        -- fix latency: isolate per-window latency statistics from each other
        -- fix latency: ensure we never record zero or even negative decode time
        -- fix refresh: server error was causing refresh requests to be ignored
        -- fix window options handling: using it for more than one value would fail
        -- fix video encoder/windows dimensions mismatch causing missing key frames
        -- fix damage options merge code (options were being squashed)
        -- ensure that small lossless regions do not cancel the auto-refresh timer
        -- restore protocol main packet compression and single chunk sending
        -- drop unnecessary OpenGL dependencies from some deb/rpm packages


v0.6.1 (2012-09-14)
======================
        -- fix compress clipboard data (previous fix was ineffectual)
        -- fix missing damage data queue statistics (was causing latency issues)
        -- use memory aligned allocations for colourspace conversion


v0.6.0 (2012-09-08)
======================
        -- fix launcher: don't block the UI whilst connecting, and use a lower timeout, fix icon lookup on *nix
        -- fix clipboard contents too big (was causing connection drops): try to compress them and just drop them if they are still too big
        -- x264 or vpx are now the default encodings (if available)
        -- compress rgb24 pixel data with zlib from the damage thread (rather than later in the network layer)
        -- better build environment detection
        -- experimental multi-user support (see --enable-sharing)
        -- better, more accurate "xpra info" statistics (per encoding, etc)
        -- tidy up main source directory
        -- simplify video encoders/decoders setup and cleanup code
        -- many debian build files updates
        -- remove 'nogil' switch (as 'nogil' is much faster)
        -- test all socket types with automated tests


v0.5.4 (2012-09-08)
======================
        -- fix man page typo
        -- fix non bash login shell compatibility
        -- fix xpra screenshot argument parsing error handling
        -- fix video encoding mismatch when switching encoding
        -- fix ssh mode on OpenBSD


v0.5.3 (2012-09-05)
======================
        -- zlib compatibility fix: use chunked decompression when supported (newer versions)


v0.5.2 (2012-08-29)
======================
        -- fix xpra launcher icon lookup on *nix
        -- fix big clipboard packets causing disconnection: just drop them instead
        -- fix zlib compression in raw packet mode: ensure we always flush the buffer for each chunk
        -- force disconnection after irrecoverable network parsing error
        -- fix window refresh: do not skip all windows after a hidden one!
        -- Fedora 16 freshrpms spec file fix: build against rpmfusion despite more limited csc features


v0.5.1 (2012-08-25)
======================
        -- fix xpra_launcher
        -- fix DPI issue with Xdummy: set virtual screen to 96dpi by default
        -- avoid looping forever doing maths on 'infinity' value
        -- fix incomplete cloning of attributes causing default values to be used for batch configuration
        -- damage data queue batch factor was being calculated but not used
        -- ensure we update the data we use for calculations (was always using zero value)
        -- ensure "send_bell" is initialized before use
        -- add missing path string in warning message
        -- fix test code compatibility with older xpra versions
        -- statistics shown for 'damage_packet_queue_pixels' were incorrect


v0.5.0 (2012-08-20)
======================
        -- new packet encoder written in C (much faster and data is now smaller too)
        -- read provided /etc/xpra/xpra.conf and user's own ~/.xpra/xpra.conf
        -- support Xdummy out of the box on platforms with recent enough versions of Xorg (and not installed suid)
        -- pass dpi to server and allow clients to specify dpi on the command line
        -- fix xsettings endianness problems
        -- fix clipboard tokens sent twice on start
        -- new command line options and UI to disable notifications forwarding, cursors and bell
        -- MS Windows clients can now choose the remote clipboard they sync with ('clipboard', 'primary' or 'secondary')
        -- x264: adapt colourspace conversion, encoding speed and picture quality according to link and encoding/decoding performance
        -- automatically change video encoding: handle small region updates (ie: blinking cursor or spinner) without doing a full video frame refresh
        -- fairer window batching calculations, better performance over low latency links and bandwidth constrained links
        -- lower tcp socket connection timeout (10 seconds)
        -- better compression of cursor data
        -- log date and time with messages, better log messages (ie: "Ignoring ClientMessage..")
        -- send more client and server version information (python, gtk, etc)
        -- build cleanups: let distutils clean take care of removing all generated .c files
        -- code cleanups: move all win32 specific headers to win32 tree, fix vpx compilation warnings, whitespace, etc
        -- more reliable MS Windows build: detect missing/wrong DLLs and abort
        -- removed old "--no-randr" option
        -- drop compatibility with versions older than 0.3: we now assume the "raw_packets" feature is supported


v0.4.2 (2012-08-16)
======================

        -- fix clipboard atom packing (was more noticeable with qt and Java applications)
        -- fix clipboard selection for non X11 clients: only 'multiple' codepath requires X11 bindings
        -- fix python3 build
        -- fix potential double free in x264 error path
        -- fix logging format error on "window dimensions have changed.." (parameter grouping was wrong)
        -- fix colour bleeding with x264 (ie: green on black text)
        -- remove incorrect and unnecessary callback to setup_xprops which may have caused the pulseaudio flag to use the wrong value
        -- delay 'check packet size' to allow the limit to be raised - important over slower links where it triggers more easily


v0.4.1 (2012-07-31)
======================
        -- fix clipboard bugs
        -- fix batch delay calculations with multiple windows
        -- fix tests (update import statements)
        -- robustify cython version string parsing
        -- fix source files changed detection during build


v0.4.0 (2012-07-23)
======================
        -- fix client application resizing its own window
        -- fix window dimensions hints not applied
        -- fix memleak in x264 cleanup code
        -- fix xpra command exit code (more complete fix)
        -- fix latency bottleneck in processing of damage requests
        -- fix free uninitialized pointers in video decoder initialization error codepath
        -- fix x264 related crash when resizing windows to one pixel width or height
        -- fix accounting of client decode time: ignore figure in case of decoding error
        -- fix subversion build information detection on MS Windows
        -- fix some binary packages which were missing some menu icons
        -- restore keyboard compatiblity code for MS Windows and OSX clients
        -- use padded buffers to prevent colourspace conversion from reading random memory
        -- release Python's GIL during vpx and x264 compression and colourspace conversion
        -- better UI launcher: UI improvements, detect encodings, fix standalone/win32 usage, minimize window once the client has started
        -- "xpra stop" disconnects all potential clients cleanly before exiting
        -- x264 uses memory aligned buffer for better performance
        -- avoid vpx/x264 overhead for very small damage regions
        -- detect dead connection with ping packets: disconnect if echo not received
        -- force a full refresh when the encoding is changed
        -- more dynamic framerate performance adjustments, based on more metrics
        -- new menu option to toggle keyboard sync at runtime
        -- vpx/x264 runtime imports: detect broken installations and warn, but ignore when the codec is simply not installed
        -- enable environment debugging for damage batching via "XPRA_DEBUG_LATENCY" env variable
        -- simplify build by using setup file to generate all constants
        -- text clients now ignore packets they are not meant to handle
        -- removed compression menu since the default is good enough
        -- "xpra info" reports all build version information
        -- report server pygtk/gtk versions and show them on session info dialog and "xpra info"
        -- ignore dependency issues during sdist/clean phase of build
        -- record more statistics (mostly latency) in test reports
        -- documentation and logging added to code, moved test code out of main packages
        -- better MS Windows installer graphics
        -- include distribution name in RPM version/filename
        -- CentOS 6 RPMs now depends on libvpx rather than a statically linked library
        -- CentOS static ffmpeg build with memalign for better performance
        -- debian: build with hardening features
        -- debian: don't record as modified the files we know we modify during debian build
        -- MS Windows build: allow user to set --without-vpx / --without-x264 in the batch file
        -- MS Windows build fix: simpler/cleaner build for vpx/x264's codec.pyd
        -- no longer bundle parti window manager


v0.3.3 (2012-07-10)
======================
        -- do not try to free the empty x264/vpx buffers after a decompression failure
        -- fix xpra command exit code (zero) when no error occurred
        -- fix Xvfb deadlock on shutdown
        -- fix wrongly removing unix domain socket on startup failure
        -- fix wrongly killing Xvfb on startup failure
        -- fix race in network code and meta data packets
        -- ensure clients use raw_packets if the server supports it (fixes 'gibberish' compressed packet errors)
        -- fix screen resolution reported by the server
        -- fix maximum packet size check wrongly dropping valid connections
        -- honour the --no-tray command line argument
        -- detect Xvfb startup failures and avoid taking over other displays
        -- don't record invalid placeholder value for "server latency"
        -- fix missing "damage-sequence" packet for sequence zero
        -- fix window focus with some Tk based application (ie: git gui)
        -- prevent large clipboard packets from causing the connection to drop
        -- fix for connection with older clients and server without raw packet support and rgb24 encoding
        -- high latency fix: reduce batch delay when screen updates slow down
        -- non-US keyboard layout fix
        -- correctly calculate min_batch_delay shown in statistics via "xpra info"
        -- require x264-libs for x264 support on Fedora


v0.3.2 (2012-06-04)
======================
        -- fix missing 'a' key using OS X clients
        -- fix debian packaging for xpra_launcher
        -- fix unicode decoding problems in window title
        -- fix latency issue


v0.3.1 (2012-05-29)
======================
        -- fix DoS in network connections setup code
        -- fix for non-ascii characters in source file
        -- log remote IP or socket address
        -- more graceful disconnection of invalid clients
        -- updates to the man page and xpra command help page
        -- support running the automated tests against older versions
        -- "xpra info" to report the number of clients connected
        -- use xpra's own icon for its own windows (about and info dialogs)


v0.3.0 (2012-05-20)
======================
        -- zero-copy network code, per packet compression
        -- fix race causing DoS in threaded network protocol setup
        -- fix vpx encoder memory leak
        -- fix vpx/x264 decoding: recover from frame failures
        -- fix small per-window memory leak in server
        -- per-window update batching auto-tuning, which is fairer
        -- windows update batching now takes into account the number of pixels rather than just the number of regions to update
        -- support --socket-dir option over ssh
        -- IPv6 support using the syntax: ssh/::ffff:192.168.1.100/10 or tcp/::ffff:192.168.1.100/10000
        -- all commands now return a non-zero exit code in case of failure
        -- new "xpra info" command to report server statistics
        -- prettify some of the logging and error messages
        -- avoid doing most of the keyboard setup code when clients are in read-only mode
        -- Solaris build files
        -- automated regression and performance tests
        -- remove compatibility code for versions older than 0.1


v0.2.0 (2012-04-20)
======================
        -- x264 and vpx video encoding support
        -- gtk3 and python 3 partial support (client only - no keyboard support)
        -- detect missing X11 server extensions and exit with error
        -- X11 server no longer listens on a TCP port
        -- clipboard fixes for Qt/KDE applications
        -- option for clients not to supply any keyboard mapping data (the server will no longer complain)
        -- show more system version information in session information dialog
        -- hide window decorations for openoffice splash screen (workaround)


v0.1.0 (2012-03-21)
======================
        -- security: strict filtering of packet handlers until connection authenticated
        -- prevent DoS: limit number of concurrent connections attempting login (20)
        -- prevent DoS: limit initial packet size (memory exhaustion: 32KB)
        -- mmap: options to place sockets in /tmp and share mmap area across users via unix groups
        -- remove large amount of compatiblity code for older versions
        -- fix for Mac OS X clients sending hexadecimal keysyms
        -- fix for clipboard sharing and some applications (ie: Qt)
        -- notifications systems with dbus: re-connect if needed
        -- notifications: try not to interfere with existing notification services
        -- mmap: check for protected file access and ignore rather than error out (oops)
        -- clipboard: handle empty data rather than timing out
        -- spurious warnings: remove many harmless stacktraces/error messages
        -- detect and discard broken windows with invalid atoms, avoids vfb + xpra crash
        -- unpress keys all keys on start (if any)
        -- fix screen size check: also check vertical size is sufficient
        -- fix for invisible 0 by 0 windows: restore a minimum size
        -- fix for window dimensions causing enless resizing or missing window contents
        -- toggle cursors, bell and notifications by telling the server not to bother sending them, saves bandwidth
        -- build/deploy: don't modify file in source tree, generate it at build time only
        -- add missing GPL2 license file to show in about dialog
        -- Python 2.5: workarounds to restore support
        -- turn off compression over local connections (when mmap is enabled)
        -- Android fixes: locking, maximize, focus, window placement, handle rotation, partial non-soft keyboard support
        -- clients can specify maximum refresh rate and screen update batching options


v0.0.7.36 (2012-02-09)
======================
        -- fix clipboard bug which was causing Java applications to crash
        -- ensure we always properly disconnect previous client when new connection is accepted
        -- avoid warnings with Java applications, focus errors, etc


v0.0.7.35 (2012-02-01)
======================
        -- ssh password input fix
        -- osx dock_menu fixed
        -- ability to take screenshots ("xpra screenshot")
        -- report server version ("xpra version")
        -- slave windows (drop down menus, etc) now move with their parent window
        -- show more session statistics: damage regions per second
        -- posix clients no longer interfere with the GTK/X11 main loop
        -- ignore missing properties when they are changed, and report correct source of the problem
        -- code style cleanups and improvements


v0.0.7.34 (2012-01-19)
======================
        -- security: restrict access to run-xpra script (chmod)
        -- security: cursor data sent to the client was too big (exposing server memory)
        -- fix thread leak - properly this time, SIGUSR1 now dumps all threads
        -- off-by-one keyboard mapping error could cause modifiers to be lost
        -- pure python/cython method for finding modifier mappings (faster and more reliable)
        -- retry socket read/write after temporary error EINTR
        -- avoid warnings when asked to refresh windows which are now hidden
        -- auto-refresh was using an incorrect window size
        -- logging formatting fixes (only shown with logging on)
        -- hide picture encoding menu when mmap in use (since it is then ignored)


v0.0.7.33 (2012-01-13)
======================
        -- readonly command line option
        -- correctly stop all network related threads on disconnection
        -- faster pixel data transfers for large areas via mmap
        -- fix auto-refresh jpeg quality
        -- fix on-the-fly change of pixel encoding
        -- fix potential exhaustion of mmap area
        -- fix potential race in packet compression setup code
        -- keyboard: better modifiers detection, synchronization of capslock and numlock
        -- keyboard: support all modifiers correctly with and without keyboard-sync option


v0.0.7.32 (2011-12-08)
======================
        -- bug fix: disconnection could leave the server (and X11 server) in a broken state due to threaded UI calls
        -- bug fix: don't remove window focus when just any connection is lost, only when the real client goes away
        -- bug fix: initial windows should get focus (partial fix)
        -- bug fix: correctly clear focus when a window goes away
        -- support key repeat latency workaround without needing raw keycodes (OS X and MS Windows)
        -- command line switch to enable client side key repeat: "--no-keyboard-sync" (for high latency/jitter links)
        -- session info dialog: shows realtime connection and server details
        -- menu entry in system tray to raise all managed windows
        -- key mappings: try harder to unpress all keys before setting the new keymap
        -- key mappings: try to reset modifier keys as well as regular keys
        -- key mappings: apply keymap using Cython code rather than execing xmodmap
        -- key mappings: fire change callbacks only once when all the work is done
        -- use dbus for tray notifications if available, prefered to pynotify
        -- show full version information in about dialog


v0.0.7.31 (2011-11-28)
======================
        -- threaded server for much lower latency
        -- fast memory mapped transfers for local connections
        -- adaptive damage batching, fixes window refresh
        -- xpra "detach" command
        -- fixed system tray for Ubuntu clients
        -- fixed maximized windows on Ubuntu clients


v0.0.7.30 (2011-11-01)
======================
        -- fix for update batching causing screen corruption
        -- fix AttributeError jpegquality: make PIL (aka python-imaging) truly optional
        -- fix for jitter compensation code being a little bit too trigger-happy


v0.0.7.29 (2011-10-25)
======================
        -- fix partial packets on boundary causing connection to drop
        -- clipboard support on MS Windows
        -- support ubuntu's appindicator (yet another system tray implementation)
        -- improve disconnection diagnostic messages
        -- scale cursor down to the client's default size
        -- better handling of right click on system tray icon
        -- posix: detect when there is no DISPLAY and error out
        -- remove harmless warnings about missing properties on startup


v0.0.7.28 (2011-10-18)
======================
        -- much more efficient and backwards compatible network code, prevents a CPU bottleneck on the client
        -- forwarding of system notifications, system bell and custom cursors
        -- system tray menu to make it easier to change settings and disconnect
        -- automatically resize Xdummy to match the client's screen size whenever it changes
        -- PNG image compression support
        -- JPEG and PNG compression are now optional, only available if the Python Imaging Library is installed
        -- scale window icons before sending if they are too big
        -- fixed keyboard mapping for OSX and MS Windows clients
        -- compensate for line jitter causing keys to repeat
        -- fixed cython warnings, unused variables, etc


v0.0.7.27 (2011-09-20)
======================
        -- compatibility fix for python 2.4 (remove "with" statement)
        -- slow down updates from windows that refresh continuously


v0.0.7.26 (2011-09-20)
======================
        -- minor changes to support the Android client (work in progress)
        -- allow keyboard shortcuts to be specified, default is meta+shift+F4 to quit (disconnects client)
        -- clear modifiers when applying new keymaps to prevent timeouts
        -- reduce context switching in the network read loop code
        -- try harder to close connections cleanly
        -- removed some unused code, fixed some old test code


v0.0.7.25 (2011-08-31)
======================
        -- Proper keymap and modifiers support


v0.0.7.24 (2011-08-15)
======================
        -- Use raw keycodes whenever possible, should fix keymapping issues for all Unix-like clients
        -- Keyboard fixes for AltGr and special keys for non Unix-like clients


v0.0.7.23-2 (2011-07-27)
======================
        -- More keymap fixes..


v0.0.7.23 (2011-07-20)
======================
        -- Try to use setxkbmap before xkbcomp to setup the matching keyboard layout
        -- Handle keyval level (shifted keys) explicitly, should fix missing key mappings
        -- More generic option for setting window titles
        -- Exit if the server dies


v0.0.7.22 (2011-06-02)
======================
        -- minor fixes: jpeg, man page, etc


v0.0.7.21 (2011-05-24)
======================
  New features:
        -- Adaptive JPEG mode (bandwidth constrained)
        -- Use an existing display
        -- Disable randr


v0.0.7.20 (2011-05-04)
======================
        -- more reliable fix for keyboard mapping issues


v0.0.7.19 (2011-04-25)
======================
        -- xrandr support when running against Xdummy, screen resizes on demand
        -- fixes for keyboard mapping issues: multiple keycodes for the same key


v0.0.7.18-2 (2011-04-04)
======================
        -- Fix for older distros (like CentOS) with old versions of pycairo


v0.0.7.18 (2011-03-28)
======================
        -- Fix jpeg compression on MS Windows
        -- Add ability to disable clipboard code
        -- Updated man page


v0.0.7.17 (2011-04-04)
======================
        -- Honour the pulseaudio flag on client


v0.0.7.16 (2010-08-25)
======================
        -- Merged upstream changes


v0.0.7.15 (2010-07-01)
======================
        -- Add option to disable Pulseaudio forwarding as this can be a real network hog
        -- Use logging rather than print statements


v0.0.7.13 (2010-05-04)
======================
        -- Ignore minor version differences in the future (must bump to 0.0.8 to cause incompatibility error)


v0.0.7.12 (2010-03-13)
======================
        -- bump screen resolution


v0.0.7.11 (2010-01-11)
======================
        -- first rpm spec file


v0.0.7.x (2009)
======================
        -- Start of this fork
        -- Password file support
        -- Better OSX/win32 support
        -- JPEG compression
        -- Lots of small fixes


v0.0.6 (2009-03-22)
===================

Xpra:
  New features:
    -- Clipboard sharing (with full X semantics).
    -- Icon support.
    -- Support for raw TCP sockets. Insecure if you don't know what
       you are doing.

  Bug fixes:
    -- Xvfb doesn't support mouse wheels, so they still don't work in
       xpra. But now xpra doesn't crash if you try.
    -- Running FSF Emacs under xpra no longer creates an infinite loop.
    -- The directory that xpra was launched from is now correctly
       saved in ~/.xpra/run-xpra.
    -- Work around PyGtk weirdness that caused the server and client
       to sometimes ignore control-C.
    -- The client correctly notices keyboard layout changes.
    -- The client no longer crashes on keymaps in which unnamed keys
       are bound to modifiers.
    -- Workarounds are included for several buggy versions of Pyrex.

Wimpiggy:
  -- Assume that EWMH-style icons have non-premultiplied alpha.

Other:
  -- Add copyright comments to all source files.

v0.0.5 (2008-11-02)
===================

This release primarily contains cleanups and bugfixes for xpra.

General:
  -- Logging cleanup -- all logging now goes through the Python
     logging framework instead of using raw 'prints'.  By default
     debug logging is suppressed, but can be enabled in a fine- or
     coarse-grained way.

Xpra:
  -- Protocol changes; v0.0.5 clients can only be used with v0.0.5
     servers, and vice-versa.  Use 'xpra upgrade' to upgrade old
     servers without losing your session state.
  -- Man page now included.
  Important bug fixes:
  -- Qt apps formerly could not receive keyboard input due to a focus
     handling bug; now fixed.
  -- Fedora's pygtk2 has mysterious local hacks that broke xpra;
     a workaround is now included.
  UI improvements:
  -- 'xpra attach ssh:machine' now works out-of-the-box even if xpra
     is not present in the remote machine's PATH, or requires
     PYTHONPATH tweaks, or whatever.  (The server does still need to
     be running on the remote machine, though, of course.)
  -- Commands that connect to a running xpra server ('attach', 'stop',
     etc.) now can generally be used without specifying the name of
     the server, assuming only one server is running.  (E.g., instead
     of 'xpra attach :10', you can use 'xpra attach'; ditto for remote
     hosts, you can now use plain 'xpra attach ssh:remote'.)
  -- Mouse scroll wheels now supported.
  -- 'xpra start' can now spawn child programs directly (--with-child)
     and exit automatically when these children have exited
     (--exit-with-children).
  Other:
  -- More robust strategy for handling window stacking order.
     (Side-effect: the xpra client no longer requires you to be using
     an EWMH-compliant window manager.)
  -- The xpra client no longer crashes when receiving an unknown key
     event (e.g. a multimedia key).
  -- Very brief transient windows (e.g., tooltips) no longer create
     persistent "litter" on the screen.
  -- Windows with non-empty X borders (e.g., xterm popup menus) are
     now handled properly.
  -- Withdrawn windows no longer reappear after 'xpra upgrade'.

Wimpiggy:
  -- Do not segfault when querying the tree structure of destroyed
     windows.
  -- Other bugfixes.

Parti:
  -- No changes.

v0.0.4 (2008-04-04)
===================

Xpra:
  -- Protocol changes break compatibility with 0.0.3, but:
  -- New command 'xpra upgrade', to restart/upgrade an xpra server
     without losing any client state.  (Won't work when upgrading from
     0.0.3, unfortunately, but you're covered going forward.)
  -- Fix bug that left stray busy-looping processes behind on server
     when using ssh connections.
  -- Export window class/instance hints (patch from Ethan Blanton).
  -- Hack to make backspace key work (full support for keyboard maps
     still TBD).
  -- Added discussion of xmove to README.xpra.

Wimpiggy:
  -- Make compatible with current Pyrex releases (thanks to many
     people for reporting this).
  -- Work around X server bug #14648 (thanks to Ethan Blanton for help
     tracking this down).  This improves speed dramatically.
  -- Reverse-engineer X server lifetime rules for NameWindowPixmap,
     and handle it properly.  Also handle it lazily.  This fixes the
     bug where window contents stop updating.
  -- Avoid crashing when acknowledging damage against an
     already-closed window.
  -- Improve server extension checking (thanks to 'moreilcon' for the
     report).
  -- Remove spurious (and harmless) assertion messages when a window
     closes.
  -- Make manager selection handling fully ICCCM-compliant (in
     particular, we now pause properly while waiting for a previous
     window manager to exit).
  -- Make algorithm for classifying unmapped client windows fully
     correct.
  -- Reduce required version of Composite extension to 0.2.

Parti:
  -- Remove a stale import that caused a crash at runtime (thanks to
     'astronouth7303' for the report).

General:
  -- Error out build with useful error message if required packages
     are missing.

Parti 0.0.3 (2008-02-20)
========================

Massive refactoring occurred for this release.

wimpiggy: The WM backend parts of Parti have been split off into a
separate package known as wimpiggy.  As compared to the corresponding
code in 0.0.2, wimpiggy 0.0.3 adds:
  -- Compositing support
  -- Model/view separation for client windows (based on compositing
     support)
  -- Improved client hint support, including icon handling, strut
     handling, and more correct geometry handling.
  -- Keybinding support
  -- Event dispatching that doesn't leak memory
  -- Better interaction with already running window managers (i.e., a
     --replace switch as seen in metacity etc.)

parti: This package will eventually become the real window manager,
but for now is essentially a testbed for wimpiggy.

xpra: This is a new, independent program dependent on wimpiggy (which
is why wimpiggy had to be split out).  It implements 'screen for X' --
letting one run applications remotely that can be detached and then
re-attached without losing state.  This is the first release, but
while not perfect, it is substantially usable.

general: The test runner was hacked to share a single X/D-Bus session
across multiple tests.  This speeds up the test suite by a factor of
~3, but seems to be buggy and fragile and may be reverted in the
future.

Parti 0.0.2 (2007-10-26)
========================

This release adds a mostly comprehensive test suite, plus fixes a lot
of bugs.  Still only useful for experimentation and hacking.

'python setup.py sdist' sort of works now.

Parti 0.0.1 (2007-08-10)
========================

Initial release.

Contains basic window manager functionality, including a fair amount
of compliance to ICCCM/EWMH, focus handling, etc., and doesn't seem to
crash in basic testing.

Doesn't do much useful with this; only a simple placeholder layout
manager is included, and only skeleton of virtual desktop support is
yet written.

Generated by dwww version 1.15 on Sat May 18 06:45:11 CEST 2024.