|
|
|
|
Changelog for xpra-6.2.0+git20240718.6fcb897e-2.1.x86_64.rpm :
* Tue Aug 06 2024 Dominique Leuenberger - Add explicit gcc-c++ BuildRequires: fix gcc: fatal error: cannot execute ‘cc1plus’: execvp: No such file or directory. * Thu Jul 18 2024 scott.bradnickAATTsuse.com- Update to version 6.2.0+git20240718.6fcb897e: * bump version * more reliably detection of X11 servers * update the release notes * #4209 fix cairo scaling dimensions used for csc instantiation * #4300 add ability to force freeze images * try to stick to the same scaling value longer * missing return value * also handle \'screenshot\' as a generic server request * avoid \'unknown packet type\' errors with screenshot requests * refactor all hello request handlers * better style and error messages * forgot to send \'screenshot\' request * pandoc lua filters are back in Fedora * cosmetic: group subcommands together * speed is a signed int now * cosmetic * fix: Fix formatting * always free images with an error context * try to reduce how often quality swings cause scaling changes * round score to nearest + type hint * unsquash the values, so minor scoring differences still matter * simplify * allow negative speed score * cosmetic * match docstring: encoder speed is less important target speed is low * remove: this term is constant for all calls * simplify and use rounding * add type hints * function should always return a dict * explicitly require RANDR and RENDER extensions * missing line continuation backslash * force rebuild * #3376 more complete protocol close methods * #3376 move websocket close to websocket connection handler * #3376 quic fast open, aka 0-RTT data * expose aioquic version * I believe this was fixed in Python 3 a long time ago * #4265 prefer keyval_to_unicode over event string * #4299 make it possible to skip NM api * #4265 only log warning if we don\'t get any key string * #4299 match api change? * link to the other security page * more ruff warnings * new ruff warnings * aioquic 1.2.0 * #4265 add more details * #4265 try to get the key string using the keyval * zeroconf gives us \'text\' records using byte strings * add some type hints * use the same spelling as the generated config * simplify + hints * minor type hints * #4296 expand path before checking it * remove redundant statement * more type hints * don\'t ask: why do we need wait longer? * prefer our own icons, prevents missing icons with some themes * prevent None deref * #3514 hack around Gtk to get bigger window controls * fix crashes on MS Windows * re-use headerbar icon functions * scale icons to match headerbar size * ensure headerbar icons remain square * add type hints * simplify: index is always a number * ignore win32 layouts without a valid x11 layout name * don\'t show duplicate keyboard layout names * add missing \'gdi\' help text, ensure an option is selected * #4294 update documentation to match new feature * simplify: handle \'--verbose\' and \'-v\' debug command line options in one place * #4294 add \'verify-username\' authentication module option * Mon Jul 08 2024 scott.bradnickAATTsuse.com- Update to version 6.1+git20240708.6cd739ab: * add more info on AES modes, keydata safety * cert should always be a string * RFB connections cannot be upgraded to \'http\' / \'ws\' * update authentication docs to match parsing code * look for the file specified * stronger type hints * the paramiko project looks unmaintained * default implementation can check password * make sure it is a string * also remove bytes here * update test to match 3c520276c813dbb3c5081b18277dfa023bc6070c * simplify: options are always strings * stronger type hints * add docstrings * verify_sync error logging message format errors * missing type hints * silence \'may be used uninitialized\' warning * #4146 use the new location for openssl.cnf * just override the \'check_password\' method which takes a string * prettier output * #4287 auth api changed password to byte strings * don\'t log redundant messages * wider type required by cythonization * #3483 keep track of the full import caller details * #4287 derp * don\'t use d3d11 capture with VirtualBox * minor type hint fixes * unbreak non-posix shadow servers * more helpful command output from terminals * oops: fixup d930e89801356780ffef78625127734caa28c5e3 * minor type hint fixes * #4282 skip missing RHEL10 packages * match the new package name * #4282 RHEL 10 packaging updates * #4281 we need clang to build the CUDA kernels on Fedora 40+ * add \'NoReturn\' type hint where appropriate * type hints and formatting * #4281 build kernels with clang instead of gcc 14+ * preverve the same interpreter version with systemd-run wrapping * don\'t bother with systemd-run when not daemonizing * remove outdated Ubuntu workaround * #4279 make it possible to resize to a fixed resolution only * POINTER(None) is not a valid construct. * Update SETUP.sh: wrong package name * Update pdfium.py * #4275 msvcrt malloc and free incorrect default definitions * fix missing http headers * typo * fix http directory listing * remove unused function * add type hints * #3582 don\'t show full Pyton version in http server string * log ssl error only once per socket * simplify: options is now required (and always a typedict) * add Python 3.12 patch for ctypes change * support printing typedict with cythonization enabled * switch to cairo enums * honour connect timeout with proxy and retry socket connect * try to get the compiler to optimize the bit shuffling functions * #4270 prefer BGRX with webp decoder * also support debug save image in pseudo video encoder * #4270 prefer BGRX with jpeg decoder * remove redundant statement, add type hint * doh: ensure the output rgb format is updated * #4270 prefer BGRX and BGRA with the cairo backend * Pillow 10.4.0 * #4270 test all combinations and report speed * #4270 add more pixel formats: RGB and BGR to ARGB * add cairo test * simplify using a type alias for paint callbacks * add missing return type so \'noexcept\' can be used * reduce debug logging verbosity * #4270 faster: inline, nogil * simplify: remove _do_paint_rgbNN methods * #4270 verify that the pixel order matches * add type alias for paint callbacks * #4271 move shared pointer via paint callback * cosmetic and inline more Cython functions * remove enum prefix for older Python versions * #4270 no need for readonly memoryview here * remove debug logging * #4270 use pixel data directly * #4270 use read-write memory so we can use it with cairo * simplify: create and populate cairo ImageSurface in one place (#4270) * with cythonize-more, we can get a TypeError too * stronger types for Cython functions * stronger types and inline compiler hint * simplify: alen == blen * #4269 replace left-over instances of \'Buffer\' type hint * #3376 identify WebTransport connections using socktype=\'webtransport\' * make debug logging less costly in hot path * #3376 working webtransport adapter * clarify that --exec-wrapper=vglrun is better * cosmetic logging tweaks * redundant * simplify * this was redundant: UnicodeDecodeError is a ValueError * cosmetic * \'SizedBuffer\' is the new \'Buffer\' * make upgrades work * cosmetic * more correct keycloak test * Revert \"#4265 warn once\" * Python < 3.12 doesn\'t have the \'Buffer\' type * #4265 warn once * #3376 (almost working) WebTransport server * narrower exception type * don\'t log error level backtrace for socket errors when sending http responses * fix keycloak test, again: t() doesn\'t return anything * Install input-source-managerAATTxpra_org gnome-shell extension by RPM/DEB * Introduce the input-source-managerAATTxpra_org gnome-shell extension * better debug logging, especially flush-then-close * stronger quic type hints * handle iterable packet data more gracefully in none_encode * ValueError makes more sense * keycloak auth module can fail to initialize with an exception * log the failing \'grant_type\' value * minor linter fixes * fix keycloak unit test: no exception raised, check the return value * fix builds for Python < 3.12 * more linter fixes * clipboard tests usually fail if there\'s a DE * simplify * validate colorspace * verify NV12 images * update test to use new \'full-range\' boolean flag * we want our buffers to support \'Sized\' * linter fixes * try to setup a test WebTransport connection * add libexec/xpra * also rename the spec file * install the dummy driver in a dev env * uppercase names are out, apparently * #4263 fix PEP 517 builds * debug logging * type hints * add debug logging to connection setup * prefer IPv4, at least for loopback * uvloop.run requires a main function, which we don\'t have * point to the current Python SSL docs * patch for better bacwards compatibility with older cryptography versions * avoid deprecation warning * aioquic 1.1.0 * simplify using binary_headers function * add type hints * use --ssh when reconnecting * Thu Jun 20 2024 scott.bradnickAATTsuse.com- Update to version 6.1+git20240620.b8d2c4b5: * openssh details belong in the openssh paragraph * cosmetic * remove \"no test suite\" from man page * remove Python 2 compat code * cosmetic and type hints * speed up save-to-file feature with Pillow > 10 * can avoid copying memoryview with Pillow 10 * cosmetic and type hints * Revert \"webp does not use \'studio\' range unless we compress with Pillow\" * webp does not use \'studio\' range unless we compress with Pillow * simplify * add \'Buffer\' type hint * prettier connect retry output * #3837 don\'t use Pillow for webp * we can handle all YUV formats here * faster? * strict interface for authentication \'get_challenge\' function * add type hints * fix RPM builds on non-Fedora systems * minor linter warnings and type hints * only import OpenGL[_accelerate] from check_PyOpenGL_support context * use a more generic approach for access the \'last-error\' * fix subprocess file descriptors going MIA on MS Windows * type hints and linter warnings * match new interface: use typedict * remove unused argument * lose reference before calling terminate(), which could error? * remove rendundant wording * show xdg bug warning just once * also ignore kwargs in dummy method * don\'t spam the logs * doh: the client method name is different * MS Windows triggers \'control_refresh\' via workspace detection * more type hints * type hints * silence some annoying gtk deprecation warnings * remove debug logging * restore compatibility with Python < 3.12 * get_packet_cb cannot be unset now * forgot to update base client with new get_packet callback signature * remove debug logging * narrower exception types * Pillow 10 supports memoryview * cosmetic * stronger type hints * #4257 missing import * Use nvidia-smi to check for GPU in a container environment * derp * #4205 hook the Gtk scale factor * simplify: remove unused glTexParameteri * stronger type hints * no need to set the viewport if we\'re not clearing the offsets * report actual rectangle count * only log the screen info once * don\'t log message about missing \'numpy_formathandler\' at info level * don\'t try \'ssh-upgrades\' or \'sd-listen\' with client sockets * type hints * #4252 use whitelist for vfb env * tell users that we have a tool for that * missed from 60b13d7ac1e08165034d34a6ad8b2c9de78f9aef * pycharm doesn\'t like relative \'./\' links * #4256 these pages had gone MIA * log the encoding with congestion event * wait for the write queue to be empty before closing * default instructions should prevent setuptools from messing up * #3483 split gtk opengl backend so we can delay \'OpenGL\' import * #3483 ensure we import \'OpenGL\' module when expected * #3582 only include interface info with XPRA_FULL_INFO > 1 * lower \'numpy\' to a suggestion, because xpra doesn\'t use numpy with pyopengl * numpy build error on Fedora 40 * downgrade to a warning * openh264 decoder throws a RuntimeError here * cosmetic, remove debug logging * update the tests for 98eb9ae2b45113ecb7832909d0978b048c26b141 and de5af5f4992d38780585e389e139357c4b6eade1 * also set and increase the frame no for skipped frames * remove mostly unused net start / end callbacks * remove unused fail callback, not supported by quic * fixes \'intra-refresh is not compatible with open-gop\' * zero is the new (and old) one * make the first frame number 1 * log frame number * the x264 encoder sends the first frame using number 0 * derp: forgot to update these callers * forgot to update test with new interface * derp: forgot to update callers via ui_paint_rgb * move rgb functions to cairo backend where they are used * #3837 simplify: add functions to paint ImageWrapper * cosmetic and type hints * #3837 simplify: \'full-range\' is now a boolean * also test decompress_to_yuv * fix self test: don\'t expect alpha in \'BGRX\' * some distros don\'t need the workaround * the image size matches the decoder context size * stop the commit hooks from messing up markdown formatting * Revert \"broken links and cosmetic formatting\" * Revert \"cosmetic: pycharm doesn\'t like \'./foo\' links\" * #3837 vpx decoder is always full range? * #3837 simplify decompress_to_yuv|rgb interface, webp is studio range * no harm in handling BGRX here * #3837 select the shader based on the image\'s color range * using a typedict with cythonize-more triggers errors * client_options is a plain dict, for now * clearer interface for gl_expose_rect * unused var * an exception should trigger the \'unchanged position\' handler * simplify * cosmetic linter warnings * try harder to detect opengl properties * the numpy format handler doesn\'t build * use proper exit codes with \'opengl-probe\' and \'opengl-test\' * show Python interpreter version * cosmetic: pycharm doesn\'t like \'./foo\' links * preserve coverage wrapper when executing test scripts * better type hints * broken links and cosmetic formatting * oops: missed from c704f1962b4b66e2e9a5995d42abd391d1f6a9ac * better workarounds for Ubuntu * simplify * the Cython distro package is new enough, for once * make github happy * Ubuntu 24.04 dropped python-all-dev * always send a \'ConfigureNotify\' * move to ubuntu 24.04 test runner * we don\'t support yaml packet encoder any more * #3376 aioquic and pylsqpack cannot be zipped * missing import for type hint * use more correct datatypes for default arguments * use stronger typedict for encoder options * add type hints * lower tolerance * #3837 normalized webp quality values were too aggressive * #4251 move HTTP_UNSUPORTED to net.common * compare all the pixels * #4111 we can\'t use memoryview type hint with Cython * more tests needed updating to use typedict * oops: also update pillow test to use typedict * show what was tested * also test avif and webp YUV decoding * #3837 test full roundtrip for jpeg * oops: tests must use typedict as arg * don\'t use temporary files * add rountrip rgb test with picture encoders * simplify * require a typedict in (de)compress interface * add type hints * derp: color label was wrong * add required attributes for generating the tray menu * make it possible to run toolbox examples more easily * avoid warnings with X11 display source not initialized * some csc modules may not be available * fixup a6338c17747868b49aed27ebd52dafc35aba6947: must ignore this keyword for stdlib call * fix rendering of some gtk test apps * add colorspace range attribute: full vs studio * #4250 terminate vfb on any fatal startup errors * cosmetic + type hints * add keyword to disable remote-logging for specific log messages * raise driver version requirements * oops: this part hasn\'t been added to ImageWrapper yet * include more detailed error messages * #3837 add plane range dump utility function * first frame should be number 1 * video encoders are expected to set the frame no * add PySocks * pynvml 12.555.43 * more helpful default invocation * plane buffers should not be modified, use a tuple * full self tests both decoding functions * make it clearer that \'full_range\' adds the \'_FULL\' suffix * oops: paint_nvdec was not updated to use new \'gl_paint_planar\' function * no need for decimals with modern hardware * use stronger type: boolean * use stronger types * only reparent to the parking window if needed * #4247 bump minimum level * failing to show or hide a window should not propagate * add type hints * this function must return a string * don\'t clear damage when the window is not managed * unused variable * move sub-packages to build documentation * #4243 map \'Visual Studio Code\' to text content-type * #4243 generic patterns should run last * remove EOLed distros * #4245 add \'install-repo\' and \'install-beta-repo\' subcommands * #4244 refer to \'dev-env\' in the documentation * match switch name exactly * #4244 add \'dev-env\' subcommand * simplify and move zlib-devel where it is needed * newer releases don\'t have \'python-all-dev\' * need a Sequence to support indices * let \'set_x11_property\' handle scalars automagically * ignore Cythong generated files * another pam error needs decoding * do use the legacy password-file option if that\'s all we have * better debug logging * threaded init callbacks failure for client connections * stricter type hints * always log full details when init thread callbacks hit issues * skip more deprecated APIs * #4231 blacklist \'llvmpipe\' software renderer * fix type hint * Sequence supports indices * do reaper cleanup as late as possible * simplify * add type hints * allow printing with more socket authentication modules * type hints find bugs * alias info is not particularly useful * derp: missing line continuation * don\'t log \'Disconnecting\' message for closed sockets * log failing authenticator if we know it * expose closed socket attribute * decode pam authentication failure message as a string * use strings for all key names * avoid deprecated APIs * type hints * #4017 need another symlink to locate the \'Resources\' dir.. * add more transitive dependencies * remove speex library and constants * add some changelog entries * add security warning about out of date downstream packages * #4222 can\'t close() a native file chooser.. * #4208 preserve previous behaviour: group all when not matching * #4208 make window grouping customizable via env var * Thu May 23 2024 scott.bradnickAATTsuse.com- Update to version 6.1+git20240523.91f77fa9: * ignore all spaces * ignore spaces * #4064 add more prominent link to \'configure\' * detect utf8 clipboard text and handle it correctly (#4233) * remove duplicate enums * silence some deprecation warnings * skip warning when openh264 decoder rounds up image dimensions to 16 * fix staticmethod signature * add Corning to the list of sponsors * simplify: reconfig once after tweaking all the settings * #4235 add missing python-cairo dependency * 4235 verify that cairo is available before enabling sync-xvfb * #4235 make it possible to call without cairo / pango installed * oops: another duplicated tag * use jpeg modified Rec. 601 * #3837 switch to full-range BT.601 colorspace transform * type hints * cosmetic * also handle generic types at this layer * #3837 openh264 uses bFullRange=0 by default * csc options must be a typedict * paint callbacks take arguments, ImageWrapper.free does not * accept more generic types * #3837 add color range metadata to frames * add type hints * add type hints * bandwidth-limit should always be an int * decoders now also require options * add type hints + show shaders when ran from the cmd line * cosmetic * better opaque region warning message * require all keys to be strings, update tests to match * UnicodeError is a ValueError * missed from 5c1d036e6da3d8053730d16fb32ff50af8290767, add type hints * missed test updates from 5c1d036e6da3d8053730d16fb32ff50af8290767 * simplify codecs: always require options as a typedict * help decoders with colorspace information * incorrect call to compress image * failure tests fail for the wrong reason * #4232 handle byte strings in \'Gtk\' clipboard backend * remove unused method * minor type fixes * simplify: remove unused arguments * device is a string * icon_filename should be a string * function must match signature of \'flush_then_close\' * simplify + type hints, also fixes dubious sonarqube \'chained expression\' warning * cosmetic + type hints * \'start_client\' already calls init_ui * parse opengl probe properties early * cosmetic * #4204 fixup 90a26b79a96281b22440018c236c551fc8c2798f: can\'t have the same field twice * add quic support to launcher * #4223 improvements and fixes * cosmetic * correct type hint for functions that never return * DBusHelper can throw a \'dbus.exceptions.DBusException\' * #4222 native chooser for saving session info graphs * fixup garbled commit 4b2e113888df4bf58214292257b792cb7092b151 * need a tuple to be able to concatenate them * strong type hints for http script responses * app_name must be a string * better sequence / iterable type hints * more type hints * include the contents of nvidia proc file when we fail to parse it * silence \'DeprecationWarning: ssl NPN is deprecated, use ALPN instead\' * simplify * missed during refactoring * simplify * use original \'general\' channel, not the duplicate one.. * fix discord invite link, again * simplify paint call context * warn users that this syntax is deprecated * consistent return value * don\'t log packet stats for audio * remove support for ancient GStreamer versions * more type hints * linter warnings find bugs, fix low hanging fruits * log the correct variable * explicit return statement * remove unused \'scaled-size\' * silence invalid ctypes warnings * add type hints * simplify: paint rgb should always work, raise an exception if not * match refactoring that removed scheduler * silence invalid ctypes linter warning * add type hints * it should be safe to read the mmap data from a non-ui thread * fix type hint * #4210 only use native chooser when force enabled * don\'t log EOF on server start as an error * better / more detailed logging * don\'t log backtrace by default * add hint * new type of error encountered when explorer.exe has crashed * make it clearer that this will upload a file * #4210 use native file choose dialog on win32 and macos * \'new_stream\' is a signal handler, use a more explicit return value * \'plugins\' may not be exposed, \'sources\' should be * the wrapped_object\'s start method now returns a boolean indicating success * newer versions may not use \'wants\' flag * more type hints * handle double barrelled feature names correctly * wait just a little bit for the splash process to terminate * hide the splash screen when showing a dialog * #4198 make it clearer that the command is missing * more fixups for 431145386dede6e0dd71a02987a3aa4c7dfc3604 * match changes from 431145386dede6e0dd71a02987a3aa4c7dfc3604 in unit test * #4198 try harder to show any error message, even garbled * #4198 before we decode it, this is a byte string * use GLib directly * remove long unused feature * respect python PATH * minor sonarqube warnings * #4210 deprecation warnings * jhbuild: update instructions for \'local modulesets\'. * fix updating version in spec file * add type hints * script didn\'t bump the version here * smarter auto refresh encoding selection * really avoid scaling with text, but don\'t discard the option * improve error messages, use set to simplify * cosmetic and type hints * #4209 make it possible to not prefer csc scaling * #4209 support YUV scaling of yuv input before converting to RGB * use cairo scaling if none of the csc modules can handle it * fix parsing of scaling values as percentages * better audio source setup error messages * #2467 forgot to update the spinner to use a shader * \'glGetProgramInfoLog\' and \'glGetShaderInfoLog\' return byte strings * indirection not needed * make it possible to force the spinners on opengl windows * make spinner window types configurable * remove duplicated method, just check availability of redraw_spinners * move subprocess exec env to a re-usable function * we don\'t need glBegin or glEnd * calling init_gdk_display_source will load Gtk / Gdk * oops: set_source_version was not updating this file * also bump version in pyproject.toml * #4204 try to tell dpkg to remove or upgrade xpra-codecs first * also handle updating the \'__version_info__\' value * prevent overloading check_file_size from file transfer mixin * remove unused sequence argument to draw_region * stronger type hints for draw options * the callbacks are only used when painting * bump subcommand timeout on arm and riscv, in one place * pandoc also runs slowly on emulated arm / riscv * missed from c7b12a61d8aa9b9fa9900c9fce13183d21e293fd * more detailed csc \'nomatch\' error messages * split package check into a reusable function * handle missing PIL more gracefully * quic type hints * wrongly modified by pycharm refactoring in c7b12a61d8aa9b9fa9900c9fce13183d21e293fd * add \'x11\' as an alias for \'native\' on Posix * ensure \'zerocopy\' flag is a boolean * stronger type hints * arm builds can take longer than 30 seconds to run add_build_info * forgot to bump version in both * remove more mostly redundant calls to bytestostr * use \'x11\' prefix for all X11 signals * this should no longer be needed * merge gtk_x11 and gtk3 modules into one * add note and link about abstract sockets * with rencodeplus most calls to bytestostr should not be needed * nasm 2.16.03 * pytools 2024.1.2 * uinput 1.0.1 * wheel 0.43.0 * pynvml 12.550.52 * latest Xcode can\'t include stdlib.h without emitting warnings.. * Thu Apr 25 2024 scott.bradnickAATTsuse.com- Update to version 6.0+git20240425.177f2546: * bump version * cosmetic: use correct time unit in logging * update date in release notes * fixup ddb72e154ace71f913ac01391b48281f3b6ca40b: only modify \'use_display\' variable when shadowing or expanding * also verify display in \'monitor\' mode * #4198 use utf8 for sending messages to the splash window * #4199 never start a display in proxy or shadow mode * #4200 fix breakage introduced by 13288d42587ca532e5a0e8e0a235207002bd6f7d * #3964 honour the csc modes specified by the client * fail fast when testing decoders with junk data * include [enc/dec]oder name in buffer error messages * cosmetic * add a fairly dumb decoder chooser * fix infinite recursion on exit * silence tons of Gtk warnings * cosmetic * missed from 130ac206b688d0bcb6c7f3bfcaf25d21a10ffc3d * switch to pycallgraph2 * make it possible to not clean stdout / stderr on exit * use the same force_quit method for all clients * minor type hint fixes * always return a string * add some type hints * more resilient: handle missing stdin * any exit code means the process has ended, even zero * better debug logging * #4195 / #3822 destroying windows is not safe * sync-xvfb=None is a valid option which means \'auto\' * sync-xvfb broke because of the changes for #3822 * no need to generate /etc/xpra/xpra.conf * #3964 automatically switch to GStreamer \'stream\' mode * remove ffmpeg encoder remnants * only switch to stream if the gpu accelerated encoding can be used * doh: remove test code * simplify * only use the convert_templates() function for \'/etc/xpra/conf.d\' files * this file has already been removed * remove reference to outdated xxhash source files * don\'t include any \'venv\' in source distribution * derp * only apply substitutions to \' *.in\' files * seems that the Debian Trixie riscv64 images are missing * skip warning if \'nvcc\' is not installed * undo non-cosmetic changes from f73adec572e1751677b8a59072fdab3aa593b1ee that broke the build * fixup for b9cc4b9bfbf5249c4c10c638d8919ace51ee9794 use list to append * cosmetic: skip warning if \'nvcc\' is not installed * switch to \'stream\' encoding if we have a GPU encoder * convert decoders to use the same spec interface as encoders * prefer immutable type, which is what we get from typedict * fix cython compilation warnings: No exception value declared * cleanup: move pillow imagegrab function * simplify video and csc initialization * bail out before acquiring the lock * stop using deprecated \'Screen\', just use \'Monitor\' * cosmetic hint fixes * can\'t convert ctypes HANDLE to a number easily * add type hints and simplify logging * add missing argument (new shadow constructor) * simplify * minor linter fixes * oops: missed when renamed variable * mypy and type hint fixes * #3667 the server auth test finally runs OK on the CI, at last * #3667 also show client output * #3667 oops: missed from 001d596afa5ef59492ded00568bae615f49f26a5 * also nice-ify the warning * fix mypy warnings: missing expected attribute \'get_allocated_size\' * oops: only the value can be used as an int * minor type hints / mypy fixes * better type hints for connection messages * #3667 python <= 3.10 workaround for StrEnum * more type hints * oops * more mypy fixes * raise exception instead of returning None * missed from da092b94a5f99628487821747029819ce63cd7ef * don\'t shadow HANDLE * oops: missed from 04465efa2e7e51bc129bd766514c551c868553e2 * fix \'truth value of an array...\' error * move KeyEvent to keyboard * more mypy / type hints fixes * add type hint * doh: just use the wrapper to handle bytes safely * minor mypy warnings * proc_to_channle should use the write function specified * can\'t add memoryviews, but we can join them * don\'t shadow the variable we\'re iterating * make mypy happy: the return type is already correct * mypy: use a valid \'Callable\' rather than a None value * mypy: don\'t use None default value for string * the method returns a flag to indicate changes were made * get_hash returns a string * avoid mypy warning logging binary string * mypy: specify type just once * simplify: callback is never None * remove unused vars * user name must be a string, decode it * typo * mypy fix: use an explicit Callable, not a hidden one * mypy fix: simplify, can\'t have a \'target_rgb\' without PIL * remove outdated comment: vpx encoder does support YUV444P * add debug logging * log message when forced to switch encoding * slightly stronger type hints * remove redundant statement * remove compat shim for old evdi lib versions * more type hints * do test openh264 on CI * simplify: \'position\' is removed from the size hints * egg-info is a directory * ##3667 the server auth test still fails * \'position\' is removed from the hints and stored in \'requested-position\' * set initial position when WM_NORMAL_HINTS request it * #3667 show server log on failure * #3667 add more diagnostics * try to make it look less \'disabled\' * the server tests no longer fail * use bind=noabstract to force authentication * fix ssl test * use the more specific ssl failure exit code * better ssl debug logging * lots of linter warning, better debug logging, etc * forgot asset used by opengl configure dialog * \'format_frame_summary\' requires Python 3.11 * doh: verify the output * YUV444P to rgb cannot use scaling * remove unused statement replaced by fallback call * make utility functions reusable * forgot to update expand server * fix relative link * pycharm table formatting * type hints and cosmetic changes * add type hints * silence more ctypes array pycharm bug * simplify: use shutil.which * minor linter warnings * stricter exception type * use absolute links * #4188 ugly Wayland popup workaround * must use a valid format value * #298 expose x11 window \'parent\' * update type hint to match code * update docstring to match code * keep the same strict type * simpler naming * downgrade to info, since Wayland clients trigger it * forgot to update these shadow servers * more minor linter warnings * more pycharm grammar fixes * more minor linter warnings * fix deprecation warning * fix deprecation warning * pycharm grammar fixes * fixup 89d3a42f4744e9ceae2d2be3208801ccd77e9ce7: don\'t redefine the type hints * fix unwanted change in 8336e66405d31ced7f388a483367d67e1ab31ac6: do copy the dictionary * simplify + stronger types * stronger type for refresh-rate: must be an int * #4064 hide unfinished GUIs * silence linter warnings * cosmetic linter warnings * match the signature of the noop in main tree * don\'t shadow the file object * we now require Python 3.10, remove workaround * remove unused vars * refactoring: convert methods to functions * we lookup commands as strings * cosmetic (no change): missing return statement * force int type rather than hinting it * silence ctypes array pycharm bug * clipboard \'format\' is a number * more correct type hint: Sequence supports len() * this is readable, the \"simplified\" version is not * pycharm reformats the tables * 404 link * honour font argument * remove duplicate patterns * fix save-to-file error on sample with no data * Sat Apr 06 2024 scott.bradnickAATTsuse.com- Update to version 6.0+git20240406.e2d97e37: * make version checks more robust * simplify: strget only returns strings * more resilient lookup of version info * move \'get_processor_name\' to a reusable function * #4187 missing video fallback calls * #2467 proper resource cleanup * also accept differences in alpha * #4187 \'konsole\' is a text application * we may want to drop the alpha channel * skip warning about hard to find amf elements * add keycloak validation of authentication groups support * only expose native types (ie: strings) via info * accel_version is never None * none of these shortcuts require X11 * validate hostname before sending it back * make it easier to test using temporary redirect * better docstring: this applies to all servers * \'LOCAL_MODIFICATIONS\' is expected to be a number * when scaling, always repaint the whole window * generic yuv format handling * cosmetic * free the WebpBufferWrapper as soon as it has been consumed * #4167 query the scale factor each time * #4167 blit to scaled size * #2467 fix MacOS native OpenGL initialization * #4181 most WM sadly no longer support StatusIcon nowadays * support opengl display attributes in non-gtk specific format * we have to destroy the window to avoid leak warnings * #4167 need vertex array to validate program on MacOS * less confusing formatting * get the full OS name using wmi, if available * #3483 make it easier to trigger locking issues * shadow servers may initialize codecs in parallel * log more information about the thread currently holding the lock * unbreak regular shadow servers * #2467 load default cursor from png, better than black square * libSvt is used by libavif * get_version() must always return a tuple * use the same smarter version parser as the decoder * better debug logging * #4182 remove \'long\' type * wait longer, needed with slow CI runs * also test libyuv and libavif * #3884 call SelectXFSelectionInput on the root window * add stricter type hints * prefer strongly typed method * #4182 simplify * must have a valid gl context to call cleanup functions * catch individual cleanup errors * try to ensure no programs or vertex arrays are active during cleanup * verify program id is valid * use the correct way to add compile args * simplified / updated latest * switches are unique, sort them just once * bail out if we can\'t change directory * build using InnoSetup 6.x * with opengl=force, continue despite validation warnings * install more \'browser_cookie3\' dependencies as packages * pillow 10.3.0 * Sun Mar 31 2024 scott.bradnickAATTsuse.com- Update to version 6.0+git20240331.738c8038: * there\'s also \'vah264lpenc\' * make it possible to (not) prefer Gtk.StatusIcon * Cython 3.0.10 * set unused alpha to opaque, just in case * cosmetic * fixup 9bb4776fc199439d0f64ded75cd14b9a56101502 * try harder to ensure \'bcrypt\' is bundled on macos * show paramiko and bcrypt info * Fri Mar 29 2024 scott.bradnickAATTsuse.com- Update to version 6.0+git20240329.c7f2d049: * RHEL 8 ships libvpx 1.7 * #3964 some hardware encoders can pad and round up * wait longer for pinentry to terminate * add type hints * #3964 enable libva hardware encoders * no python 3.13 in \'ubuntu-latest\' * #3964 ensure NV12 encoded streams are decoded the same as YUV420P * #3964 warn if the overrides are missing * also build test with Python 3.13 * add YUV444P conversions * fix linter warning * simplify by bumping the version requirements * fix: updated deps for libspng0 and libopenh264 * fix: updated deps for libspng0 and libopenh264 * #2467 generate separate shaders for each pixel format * don\'t assume TEX_Y is zero, it\'s confusing * log failing shader source with line numbers * try to honour the quality value * better warnings when picture format is invalid * don\'t buffer frames, leak them * #3964 choose a csc mode and expose it * YUV444P to RGB so we can paint vp8/vp9 YUV444P frames without opengl * handle YUV444P decoding * more details on decoder failures * #3964 multiple options per encoding * #3964 implement \'save-to-file\' so we can inspect the stream * #3964 make it possible to honour the encoding specified * missing attributes should raise a AttributeError * delay instantiation of paint context manager * cleanup * #3964 don\'t use damage * #3964 stop the gstreamer pipeline when damage events stop * add logging of directly queued frames * refactor gstreamer video encoding selection * no need to reconfigure when the actual quality was not changed * try harder to guess the display to shadow * split dual-use function * only expose selection owner if we have a value * better heuristics for guessing X11 display state * stray comma * #3964 support mode options * type hints * doh: forgot to add shadow configure gui * re-use text function * #3964 include d3d11 plugins * making it look less gray (less like it is disabled) * #3964 bundle gst-inspect-1.0 via the wrapper tool * cx_Freeze uses splitext, which doesn\'t work for gst-launch-1.0.exe * #4100 also de-duplicate gstreamer dylibs * #3964 include test video sinks * #3964 use more standard location for \'gst-plugin-scanner\' * #3964 move list of capture elements to platform code * remove some gtk2 remnants * #4064 move shadow server configuration to its own gui * #3964 filter out plugins not installed * Wed Mar 20 2024 scott.bradnickAATTsuse.com- Update to version 6.0+git20240320.3451df55: * None cannot be used as a test value * skip verifying the main thread * #4129 try to prevent loading X11 bindings when using portal / remotedesktop shadow modes * don\'t start a display when we don\'t find one to shadow * make it easier to send progress to stderr * use the same datatype everywhere for RGB modes * #4092 point users to the pyxdg bug * move all src size validation earlier, in one place * Mon Mar 18 2024 scott.bradnickAATTsuse.com- Update to version 6.0+git20240316.b696eb87: * #4165 nm api can return an int instead of an object? * #4100 non-opengl case needs a yuv-to-rgb csc option * choose the csc option with the best score * simplify: any supports empty sets and will return False * reduce missing video pipelines log spam * just filter out any non alphanumeric characters for now * add missing changelog entry * race condition: input thread must wait for curses_init() to complete * aioquic 1.0.0 * sockname may actually be a tuple or list * include more debugging details * #3754 add (unused) callback for wrap_buffer utility function * cosmetic * minor linter warnings * avoid None value dereference * this link should not expire * #4163 rename to prevent conflicts * record the build type * one more temporary ugly fix * show the files preventing us from removing a directory * #4100 avoid DLL errors: don\'t ship these plugins * #4100 show disk usage during build * #4162 dialogs must be destroyed before we can continue * remove duplicate imports * stronger type hints * hide the dialog before trying to close it * cosmetic type hints * type hints for signal handlers * splash subprocess should never wait for input * #4161 log \'nocsc\' warning just once per encoding / window * only warn once per window when no video options are found * never wait for input in a subprocess * oops: no stdin on MS Windows * add wrapper for gst-launch-1.0 * cosmetic * add full backtrace at debug level * take the first match * workaround for cx_Freeze not packaging zeroconf properly * use \'mdns\' logger, don\'t bother trying avahi on MacOS or win32 * better wrapper script * type hints for return values * log loading of pycuda top level package * delete dead symlinks, error out if \'agent.default\' is not a symlink * get_console_position must return a pair * only skip old options if we don\'t have a new one * use argv passed in * use wrappers to ensure the environment is configured before importing the gi bindings * delay gtk import so win32 program context has time to setup gi import environment * handle invalid timeout argument more gracefully * oops: match renaming * #4064 we have to use program_context early on MS Windows * fix unit tests that rely on named arguments * type hints and cosmetic pycharm warnings * the bindings already return strings * ensure \'sock\' is always defined (pedantic) * positional arguments gone wrong * consistency in naming arguments * ctypes requires byte strings * this method cannot handle any kwargs * oops: match refactoring * remove debug logging, use strings for all paths * noerr takes a callable, not a return value * simplify: \'which\' now always return a string * make pycharm\'s linter happier * fix circular import * minor type hints and pycharm warning fixes * log the prompt * exception handler logging potentially wrong socket information * python signal handlers take two arguments * type hint fixes * fix draw passthrough stripping of unused alpha channel * avoid sending a warning notification for missing server log * add type hint for download callback * workaround for \'.\' in package names (ie: autoconf2.13 * #4100 skip ssl cert post-install step with light builds * derp * handle missing stderr more gracefully * find_spec throws exceptions * simplify: remove some duplication * tify up: move tlb files to their own directory * #4100 use an alias to simplify: \'--without-encoders\' * only exit if the token is invalid, not when missing * stronger type: mmap_filename should always be a string * return empty caps when disabled * #4100 try to only show the subcommands actually available * #4100 nacl fixup * #4100 pillow indirectly needs libsharpyuv * #4100 split pillow encoder and decoder * delay logger import * #4100 don\'t print scary warnings with \'light\' builds * #4100 doh: typo * stop splash when showing a notification * use the warning summary if that\'s all we have * make the opengl texture / viewport size limit configuable * add some debug logging, with the ResponseType constants * fix password prompt causing client exit * fix deprecation warnings * avoid errors during authentication * avoid parsing errors when socket options contain dict values for \'auth\' * cosmetic logging tweaks * libtiff needs libjbig and libLerc * #4100 Pillow needs libopenjp2 * #4100 split gstreamer so we can install audio without video * byref returns a POINTER, but addressof does not? * always show all options, add tooltip to explain why some aren\'t available * #4100 we still need the audio executable in light builds * fixup cfd23b1605c8aebe4d4d2eee845a93f884971677: accept more iterables * #4100 fix non-light builds config bundling * don\'t show warnings when running with older config files * remove duplicates * #4100 the \'start session\' dialog does not require the server components * #4100 rename to \'Light\', remove more bits * #4100 lightweight builds, initial cut * support same arguments as when calling loader directly * use the correct toggle * #4157 allow scheduling of more keys changed events as soon as we execute the timer function * add QUIC, rename SSL to TLS in link * #4157 add toggle to skip verifying modifier state * simplify * don\'t bother trying to load X11 components on MacOS * prettier output * if we fail to import the x11 backend, revert changes to GDK_BACKEND * include brotli dylibs explicitly * Wed Feb 28 2024 scott.bradnickAATTsuse.com- Update to version 6.0+git20240228.5ab86d11: * set the GStreamer env vars earlier in the wrapper script * #4125 make it possible to specify backtrace expressions using env var * doh: typo * we need libxxhash, include it explicitly * we don\'t need to bundle ffmpeg since 20bb5f04233dc650022bc67d5904566d1b158af9 * #4098 abstract sockets only work on Linux, AFAIK * desktop geometry changes need an X11 context manager to move the windows * remove pointless method, call \'get_printer_definitions\' directly * silence another gtk deprecation warning * fixup typo breakage introduced in 13288d42587ca532e5a0e8e0a235207002bd6f7d * method returns a boolean * missed from 0211a3f25ccf257e6be5e85d9a78c71c9bb6b088 * strip out unhelpful values from distro strings * don\'t query \'linux_distribution\' on MacOS or MS Windows * bundle dbus on win32, but still not on macos * add missing soft dependency * simplify * remove duplicated line * check both ends support the feature * re-add some of the type hints reverted in 5bec0e8a1544fb265ef7f018f235486398777649 * more correct check: \'file\' should be a dict * Revert \"use shlex for quoting\" * newer version use a proper namespace * cosmetic * use \'file\' logger for \'send-file\' control command * consistency: only check the size * #4106 try harder to identify an existing ibus-daemon * #4106 basic command pid tracking * #4098 don\'t try to \'touch\' abstract sockets * client wrongly claiming file download is not available * typo caused \'subcommands\' to go missing * fix some deprecation warnings * type hints were too strict, caught by cythonize-more * new wrapper since comtypes 1.3 * Sun Feb 25 2024 scott.bradnickAATTsuse.com- Update to version 6.0+git20240225.77c41071: * Install manpages to share/man on FreeBSD * Bump actions/setup-python from 2 to 5 * Bump actions/checkout from 2 to 4 * Create `dependabot.yml` * Add `.git-blame-ignore-revs` file * add Ubuntu Noble Nombat repo files * Thu Feb 22 2024 scott.bradnickAATTsuse.com- Update to version 6.0+git20240222.41136907: * stop using dbus notifier after cleanup * oops: forgot to bump the year * add package list for Fedora 40 * update the release notes * add Ubuntu Noble Nombat * shortcut out if we\'re not going to use the \'guess-content\' feature * don\'t guess the window\'s content type in the UI thread * cosmetic warnings * menu data could be empty if first loaded without the \'remove_icons\' flag * add type hints * parsing should always return an int * also avoid subsampling csc with text * ignore video_max_size for text content * #4144 use sys.executable to find the correct python interpreter * update the index to prevent 404s * #3978 have to install build deps to run build command * #3978 test more Python versions, with \'cythonize-more\' option * newer versions can throw NotImplementedError here * make it possible to expose all map state * cleanup + better warning for unexpected events * #4135 add env toggles for all delete options * fall through to XKill if we don\'t have pid * #3478 WM_STATE should be two longs * type hints and formatting * stronger type hints, add \'WithdrawnState\' constant * remove unused screen_number * use shlex for quoting * add debug logging * simplify and add debug logging * try harder to always close sockets on error * replace traceback with \'backtrace\' logging feature * add more attributes and use stronger types * log stats before resetting the connection object * add more mask constants, utility functions * expose more event attributes * stronger type * #4113 ignore the generated cpp libproc file * PEP 591 * enumify * #4137 add missing check for start-child-late * log sockets stats from more places * log the wm-state we\'re setting * check again after acquiring the lock * more readable: parse don\'t return defaults * fixup 0c6bcc23a5bde960c90f4aea7d04f405692718ad: oops, negated test * doh: all backends now take a display argument * #4135 use DestroyWindow instead of kill signal * #3936 add riscv64 to Debian repo files we have builds for * return whether the request was handled or not * avoid mdns errors, log message instead * #4125 make it easier to automatically enable all backtraces * #3483 numpy can be imported when making gl calls * #4124 the xpra-server.socket and xpra-server.service are already bundled automagically * #4124 use the same update file as from fs/lib/systemd/system * type hints and debug logging * more appropriate method name * #3938 honour the ICCCM spec * #3938 not needed, I think * #3938 split configure and notify * always include a backtrace with logged X11 errors * consistent return statements * #3483 numpy may be imported here first * we need the display name to validate * call the narrower move / resize functions * add socket upgrade debug logging * #3938 until we reparent, update the client window directly * #4125 also make it easier to trigger backtraces programmatically * type hint fix (errors with cythonize-more) * typo caused ssh upgrade flag to remain enabled * simplify * #4129 ensure \'c\' is initialized * don\'t use video dowscaling for text * #3938 avoid unnecessary configure event * the above argument is an int, cythonizing causes errors with a bool * don\'t synchronize window manager X11 properties * #3938 update requested position and size from hints * use the correct type for sibling window (an xid) * blacklist some more gnome apps * Wed Feb 07 2024 scott.bradnickAATTsuse.com- Update to version 6.0+git20240207.f845c2d5: * remove debug logging * #3938 ignore position hint changes when the client is showing the window * silence KDE specific wm events wrongly sent by wine * oops: don\'t shadow the \'opengl\' string variable * typo: instantiate the context manager * silence another gtk screen dimension warning * \'.\' in \'gtk+3.0\' causes a parsing error * oops, fixup e5aa9529284c0c0a379c6951d5d3fc86525824dd: swap source and dest change * Tue Feb 06 2024 scott.bradnickAATTsuse.com- Update to version 6.0+git20240206.e5aa9529: * gst-plugin-scanner needs to find the gstreamer dylibs * \'+\' in \'gtk+\' causes a parsing error * enable write access for buffers we own * bandaid for clipboard data received as a string * simplify * use simplified pypi source URLs * numpy 1.26.4 * show the prefererd www directory in the warning * better OpenGL probe error messages * Ubuntu 22.04 ships an old version of Pillow.. * it seems that we can get a None value here.. * using a dictionary is safer and easier to read * \'dirs\' must contain pairs * openh264 2.4.1 * shortcut out earlier * network layer can\'t encode enums * #4125 trigger backtraces with regular expressions * cosmetic: reformat * #3916 also update \'requested\' attributes * doh: only shortcut out if nothing has changed * type hints * move function where it is needed * #3916 once a window has been moved, the \'initial position\' should be honoured * cosmetic: type hints * #3542 always initialize pointer position * #3542 don\'t validate pointer position without a window * #3542 only ignore pointer data with a valid window id * a window should not be focused and hidden at the same time * remove \'focused\' state when windows are iconified * expose X11 errors and import from correct module * Elaborate on \"`#` in Xpra Key Bindings\", and complete the documentation * #4112 boolget now defaults to False * #4117 the manual is no longer available on xpra.org * Improve documentation for Keyboard Shortcuts * #4113 use enum types with c++ * oops: misindentation * simplify: set_icon_full can use full paths with extensions now * appindicator fixes * some modules can have a dot in their pip freeze name * simplify * cannot call about() directly from a wiget callback * also log abstract socket cleanup * don\'t show an invalid display size * add tray debug logging * wrong argument for tray constructor: pass menu * refactoring gone wrong: compare with the string * add type hints * fix cosmetic warnings * make it easier to test * signal handlers don\'t return a value * match add_init_thread_callback signature - never used? * type hints: fixes and stronger types * simplify: shotcut out and flatten * move osx notifier to its own module * convert to int on entry * silence deprecation warning * cosmetic: reformat * fix socket setup failure cleanup code * better validation of abstract socket paths * cosmetic: reformat * #4064 move gstreamer configuration to new gui * cosmetic: reformat * use gi_import for API versioning * cosmetic: reformat * #4109 / #1442: try to prevent pyvda errors from breaking things * Revert \"fix building with clang\" * #4111 revert type hint that breaks some builds * #4110 fix \'flags\' argument to \'PyMemoryView_FromMemory\' * #3514 / #3943 these env vars are now redundant * #4109 catch unexpected pyvda error on import * fix building with clang * silence \'warning: ‘Py_UNICODE’ is deprecated\' * make some memoryviews as readonly * cosmetic: reformat * #3483 make numpy-blocking more fine-grained * cosmetic: reformat * #3483 make it easier to block numpy * move nomodule_context to a more reusable location * #3623 show adapter type * cosmetic: reformat * avoid escaping backslashes in win32 filenames * cosmetic * #4044 don\'t try to print a size we don\'t have * #4044 match interface change: new argument * #3987 add env toggle to force RGBA internal format * try harder to reap and close fds of pinentry * don\'t leak failing socket * #4098 automatically use abstract sockets * group imports * cosmetic * ensure each socket gets its own options object * do cleanup timed out sockets * also use unexpanded paths in default config * don\'t expand XDG_RUNTIME_DIR or HOME in config files * cosmetic * catch missing connection objects sooner * fix breakage introduced by 28adf9b8a2740aac74f5507bdf7302b73de28613 * move paramiko imports, type hints, cleanups * fix breakage introduced in 4b50a2560ab4d8dbf9054982c2862880c393bc95 * #2303 the proxy server may also needs to clean ssh session files * #2303 modifying os.environ is not thread safe * simplify: load_session_file always returns bytes * use the newer non deprecated Rsvg.render_document function * cosmetic * simplify * remove debug logging * only import the X11 bits after checking for Wayland * RFB connections send a 12-byte initial packet * don\'t use GTK xsync context manager with Wayland * don\'t generate html annotations by default * load icons via the safer \'open_only\' function * skip Gtk to avoid pointless deprecation warnings * all protocol instances are expected to have a start_time * cosmetic * silence gtk deprecation warnings * force text quality to 100 * avoid spamming the log with empty requests * no need to xsync with Wayland displays * don\'t let opengl cleanup errors hang a window * MS Windows can\'t handle nested \'transient-for\' ? * handle pyvda failures more gracefully * make it possible to specify \'transient-for\' * move run_gui to common * modal windows can\'t have transient-for windows? * more helpful message if opengl cannot be initialized * gtk can fail to load webp images * also locate resources dir from source directory * allow \'xpra/html\' as a \'text\' target * more readable code, try harder to return usable targets * honour client specified order of clipboard preferred targets * /var/www/xpra is another valid location for the html5 client * fix deprecation warning * continue closing other windows * use correct enum type * we need to check for glDeleteProgram * fix linter warnings * use the start_thread wrapper and name the thread * enable python3.13 builds * if we wait for input, we don\'t use the log file * always import gi bindings via gi_import * fix version check: don\'t compare strings * use the correct argument type * always build the latest aioquic * minor linter warnings * close log file on exit * type hints and style fixes * delay loading of ssl module * remove redundant exception logging * forgot to bump year, again * cosmetic * #3483 OpenGL may import numpy via its array modules * #4098 add abstract socket support * support multiple csv attributes with bind options * unify socket setup code * cosmetic * don\'t wrap our own exceptions twice * fix python 3.12 deprecation warnings * silence more sonarqube warnings * move ssl bits to their own module * fix more sonarqube warnings * wait for local sockets to become available * try to help sonarqube * use the existing toggle * match expected (unused) type * fix sonarqube linter warning * only build cuda kernels for nvenc or nvjpeg encoder * this discord invite link does not expire * fixup unit test for 681a0bc2b80896e9f49b922780f4afc358c1b7f9 * prevent circular imports * move version to gi_import * #4097 controller and master are indexes * #4050 oops: ignore the \'Modules\' line but continue * #4050 zero is a valid value we want to record, None is not * #4050 add python modules from \'pip3 freeze\' output * #4050 add sbom from \'jhbuild list -a -r\' output * cosmetic * cosmetic pep8 fixes * #4050 record pacman data * minor linter warnings * missing f-strings hides the log filename * prettier output: repr formatting escapes backslashes * Cython 3.0.8 * oops: remove debug logging * use the correct package name for the gi bindings * document empty method overrides * aioquic 0.9.25 * type hint was incorrect * minor linter warnings * use the correct type for a strict intget call * use the correct type for boolget call * forgot a comma * more consistency * remove unused assignment * pypi source archive uses lowercase * always use force_close_connection so errors will be caught * #3889 avoid dangling connection objects * pycuda 2024.1 * #3889 safer and cleaner socket wrapping * cosmetic * numpy 1.26.3 * pillow 10.2.0 * #3889 try to wrap connections again on \'invalid_header\' * cosmetic * cosmetic * cosmetic + match refactoring * move more code out of core modules * Fix paths to content-type, content-categories files. * cosmetic * #3978 prevent aioquic logging loops * fixup 70f663fcca5b212bd5aaf3ed0543141737029296: forgot cython modules * #3957 minor tweaks and cleanups * #3957 use non-blocking select and add test tool * minor linter warnings * Fix passing window xid to prop_set, prop_del. * X11ServerCore.__init__: enable type checking * #3957 add stub record module * disable the mangled scripts * #4086 flake8 fixes for setup.py * #4085 add more metadata * doh: video_subregion must be initialized * aioquic 0.9.24 * oops: instance now needs get_type * allow systemd-run with Ubuntu >= 22 * fix layout, add ignore codes * more readable layout * now need to mock \'codec_type\' * #4086 flake8 fixes for \'platform\' module * #4086 flake8 fixes for \'server.mixins\' * don\'t compare the class, use the \'type\' string instead * #4086 flake8 fixes for \'server.window\' module * #4086 flake8 fixes for \'server.source\' module * #4086 flake8 fixes for \'server\' module * cosmetic * don\'t call superclass twice * cosmetic * #4082 add \'list-clients\' subcommand * #4082 add \'display\' * cosmetic linter fixes * #4082 add \'session-type\' * generic permission checks for hello requests * #4086 flake8 fixes for \'net\' module * #4086 flake8 fixes for \'scripts\' module * doh: validation triggers warning path * #4086 flake8 fixes for \'client\' module (part 2) * #4086 flake8 fixes for \'client\' module * #4086 flake8 fixes for \'gtk\' * #4086 flake8 fixes for \'gtk\' * #4086 flake8 pass for \'codecs\' * #4086 fix \'audio\', \'clipboard\' and \'keyboard\' * linting in dbus, gstreamer and top level modules * fix pflake8 warnings in util modules * fix pflake8 warnings in x11 modules * fix flake8 linter warnings * add pflake8 config * #4085 \'version\' is a required attribute * pyproject.toml only used for \'ruff\' for now * minor ruff warnings * #3574 add \'control\' to socket options * cosmetic * #4082 show \'endpoint\' in client info * no need to add quotes for these types * exit reprobe loop as quickly as possible * simplify sysconfig toggle * ensure we touch the sockets early * simplify: never clean sockets touched in the last minute * shortcut out if client gl is not installed * #2467 we can probe opengl on Wayland now * use the package names * expose numeric version numbers * remove warning for ancient versions of paramiko * workaround paramiko error with agent keys * #4083 load global /etc ssh config * #4083 remove \'nogssapi\' workaround * Cython 3.0.7 * setup.py: Change \"Y/N\" output into more readable \"Yes/No\" * docs/Build/Dependencies.md: Add required Cython and PyGObject * don\'t toggle features that are missing * set ICCCM\'s WM_ICON_SIZE * #4064 show configure gui from main gui * split module names into a reusable function * only add ping latency when delay is used * make the default iconify delay configurable * don\'t clamp the whole window to the desktop * validate frame extents values * try harder to close the test windows on exit * force enable to validate * cosmetic * #4064 forgot to add the test images * fix constraint calculation for max size * #4064 add tool for installing and remove xpra packages * generic solution to signal handling problems with Gtk * signal handlers can\'t call Gtk.main_quit directly * handle signals correctly * add help text * honour \'sensitive\' arg * MS Windows dialogs prevent access to about window * Updated Debian override_dh_shlibdeps rule to move avif back to codecs-extras, as I believe was originally intended by commit f1787a07b1fe4ebb6b9b2b57309a36396c39a2cb (#2998 move avif to codecs-extras, 2023-09-20). * Updated Debian control to refer to libavif16 instead of libavif15 for sid and trixie. Debian\'s package was renamed when its source package libavif version 1.0.1-1 was uploaded to sid on 2023-10-07, and that version migrated to testing (trixie) on 2023-10-12. * silence useless depreaction warnings * #4064 add exe tool for configure gui * cosmetic, type hints * remove cython3 package to make sure we use the pip one * forgot to add the module * #4064 add MacOS and MS Windows wrappers * cosmetic * add \'file-transfer\' and \'printing\' to the list * #4064 move more code to common * don\'t show a warning when parsing comments * simplify using glob * move socket info to where it belongs * #4064 add \'features\' toggle dialog * cosmetic type hint and logging fixes * #4064 correctly parse config files with newlines * cosmetic * #4064 add test images * #4056 lstrip was misused * #4064 opengl configure dialog * cosmetic * add opengl configure window stub * (re)move unused distro functions * missed files from 52800820f2f7c457c9ca9e256dd3bae2c0d9e1cb * split utility functions away from os_util * make utility functions re-usable * cosmetic * #3483 try harder to catch all paths that import numpy * #3975 apply env settings early * some items don\'t have callbacks * warn only once * Fix broken URL in docs * #4055 virtual workspaces for MS Windows * cosmetic * type hints and fixes * in case the config doesn\'t have a value * Wed Nov 29 2023 scott.bradnickAATTsuse.com- Update to version 6.0+git20231129.84c22933: * always strip the ImageMenuItem object from the callback arguments * #4061 use indirection to remove callback arguments * Enable pam functionality on Linux only * Extend some LINUX cases to FREEBSD * Tue Nov 28 2023 scott.bradnickAATTsuse.com- Update to version 6.0+git20231128.fc4b6d1f: * logic error: must use a list here * cosmetic * check all icon directories * logging formatting error * silence pointless warning we can do nothing about * move non-gtk-specific functions * increase the number of themes to try * doh: add themes via glob until we reach the limit * cosmetic * avoid missing property warnings with \'autoaudiosrc\' * verify python version early * Cython 3.0.6 * these aren\'t meant to be modified any more * openh264 2.4.0 * cosmetic * typo + always try to remove egg dir * this variant should work everywhere? * remove EL8 cruft * use the python3 interpreter we want * oops * wheel 0.33.6 is the last version that builds with Python 3.6 * build more F39 RPMs * get rid of unusable egg directory * use distro package for python3-wheel * we want to build python3-wheel, just not on Fedora * oops: add missing build dep * latest pylsqpack requires python-wheel * tell the CI where to find the signal watcher * #3313 self-signed certificates fail * cuda_rebuild should default to None (aka \'auto\') * cosmetic * image_path must be a string * linter warnings * #2467 disable opengl on MacOS until it is fixed * remove legacy imports * callbacks use dbus types * minor linter warnings * #3945 the headers are not tied to the python version * read using io watch instead of threading * cosmetic * install systemd service if we have libsystemd.pc * doh: allow empty unit, also strip spaces * use \'notify\' category for class loading warnings * document how to install locally * handle values with units, better error messages * minor type hint fix and other warnings * simplify move version info to gi_import * cosmetic * num_lock_modifier is never None + cosmetic * cosmetic * show a more useful process title * simplify * cosmetic * cosmetic linter warnings * call kill just to be safe * use the enum rather than the alias * #4049 also exit on IO_ERR, always terminate watcher * this doesn\'t do anything * add update note * use shader version constant * numpy 1.26.2 * cosmetic * never rebuild cuda kernels via setup.py on win32 * verify checksum * aioquic 0.9.22 * pylsqpack 0.3.18 * wheel 0.41.3 * #4026 workaround for broken relative paths * missed during InfoTimerClient refactoring * pycuda 2023.1 (patch no longer needed) * pynvml 12.535.133 * log the opengl version found using NSOpenGLGetVersion * #4040: oops Gdk windows can\'t be closed, just hide it * safer pyobc code use alloc immediately followed by init * #2467 finally able to use only core context * #4040 closing is safer * always send flush attribute * fixing pycharm linter warnings fixes (minor) bugs * cosmetic * cosmetic + fix cythonization runtime error * #2467 we have our own render buffer * cosmetic * #2467 handle scaling in shaders * this method was no longer useful * oops: missed from 071b2ac416a223fdb2f0d7009527b52306642300 * more detailed debug logging * the video helper is no longer a clone * cosmetic * replace and hide misnamed \'pixel_format\' * cosmetic: formatting * remove old pydev annotations * this has been unused for years * also include encoder info in video fallback path * add debug logging for encoding selection * improve debug logging messages * ensure we initialize all encoders before choosing an encoding * prefer gi notifier to GTK one * #2642 fix instantiation of csc modules * one more gi import warning to silence * #2467 it is safe to run opengl probing with Wayland now * try harder to find a valid command * too many transient CI failures * silence more gi import warnings * fix cython warning: reorder attributes * stronger type hints * don\'t rely on transitive dependencies * generic context manager for silencing warnings * missed from conversion to enum * cosmetic * ensure the content-type is initialized at least once * skip empty attributes * prettify and remove sock.close * cosmetic and type hints * move socket state to an enum * use stronger types and see what falls out * cosmetic * always use ints for workspace values * partial revert of 4696b271c352adab371aec5d3cb9972e00297891 * #2467 validate early, fix linter warnings * #2467 fix validation + link program * #2467 initialize the vao just once * #2467 \'texture_pixel_format\' is no longer needed * cosmetic * #4040 prefer \'gtk backend on MacOS * silence gi import deprecation warnings * these functions cannot raise exceptions * #2467 hook the gtk backend into the same present fbo * repr string had got mangled * state explicitly which decoder failed * log a debug backtrace when a video decoder fails * XDG_SESSION_TYPE is not reliable * show the client\'s opengl backend if we have it * more consistent log output * #2467 use an \'overlay\' shader to replace the texture blending * #2467 convert nvjpeg to using blit * move debug to its own module * move reusable code to util module * cosmetic: debug logging * #2467 prefer glarea backend under wayland * #2467 fix painting of rectangles: paint box and border color * #4044 we already have strings * don\'t include empty key event in debug list * #4044 type hints were wrong * try to close sockets cleanly on exit * improve messages * #2467 turn off nvjpeg and nvdec until they are fixed * #2467 try to switch to core profile and gles contexts * #2467 better compatibility * cosmetic: logging * #2467 fix YUV painting * github obfuscates the uri? * #4044 readlines returns a string * Cython 3.0.5 * #4044 paramiko\'s readline() returns a list * #2467 disable YUV painting until the shader stuff is fixed properly * cosmetic + move methods to functions * bump release number to update the build from Fedora 39 * #2467 more compatible shaders, remove RBGP * #4040 try harder to exit more cleanly on error * doh: convert to string earlier * #4044 force gtk3 * better error message formatting * allow debug colors for \'opengl\' subcommand * pyopengl can get mixed up * make it possible for key events to pass through * add missing dependency * #2467 compile the shaders * #2467 handle errors more gracefully * stubs for exposing more info * cosmetic * try harder, continue without the list of extensions * simplify naming * #2467 better compatibility with some drivers * simplify and always return info * #2467 add patch to silence egl file open warning * expose the pyopengl backend in use * #2467 correct \'check_support\' implementation * use correct logger * #2467 better backend detection and setup * #2467 YUV painting needs updating to use blitting * remove debug logging * #2467 force \'egl\' backend on Wayland * clearer messages * #2467: don\'t try to load the x11 bindings under (x)wayland * don\'t shadow variable * #2467: oops, don\'t override show flag * don\'t trust these env vars * fix some minor linter warnings * don\'t hardcode the \'xpra\' command * avoid CI timeouts * install aioquic so we can run the full network tests * #2467 always make the gl context current before use * #2467 don\'t force x11 for opengl on wayland * #2467 try to continue without shaders * #2467 opengl switch can be used to choose a backend * but of course we need extra flags.. * simplify: install pip3 using apt * opengl backend doesn\'t use this method * #2467 let draw_fbo specify the return value * #2467 split opengl init into a new method * c_char_p needs bytes * cosmetic * try harder to install Cython via pip * also close dangling sockets on permission errors * #2467 use glBlitFramebuffer instead of GL_QUADS * #2467 enable arb context, but not core profile * #2467 refactoring and toggle for glXCreateContextAttribsARB * version in Fedora is too old * close sockets on errors * we install cython in xpra.sh via pip * stub for creating core context * cleanup and fix warnings * we still need this line for the _other_ warning.. * silence gtk macos warnings * #4028 direct replacement with search and replace works * unify exit code checks * Cython 3.0.4 * add some opengl debug logging * honour opengl=force * fix crashes on win32: close not destroy * never expose typedict in info packets * type hint fixes * numpy 1.26.1 * setuptools 68.2.2 * pillow 10.1.0 * pytools 2023.1.1 * libyuv 1878 * fix bogus date * opencv is being removed * mDNS can be used at both ends * we don\'t use yaml any more * update the release notes * silence sonarqube warning * #4017 fixup c91d48a96d4f9947356f08a642fa276d334ac3be: missing contexts * move function only used in tests * refactor and silence warnings * make gobject client import more lightweight * need to install a newer Cython ourselves now * require Cython 3 * use pip to install cython v3 * Minor man page fixes * #4017 screen.backingScaleFactor move objc glue * show warnings until we can remove this function * #3964 call \'sync\' before calling gstreamer * work towards eliminating gtk/util module * better diagnostic message * #3964 missed module file * #3964 run some basic pipelines for testing * #3964 add state dir to paths * #3964 add config file tools * #3964 split images from icons * #4017 scale OpenGL viewport on MacOS with \'backingScaleFactor\' * should be usable as a window context manager * silence deprecation warning * #3964 forgot to add images * client may be None * use the safer superclass method (client may be None) * client may be None * shortcut out on zero exit code, remove debug logging * wait for window to register message * better backwards compatibility with v3.1.x clients * verify client connection has input configured * cosmetic * expose new \'about\' subcommand * destroy about dialog with parent * #4023 also don\'t warn if enc_avif is missing * #3964 template * silence warning * add type hints and type fixes * correct type for tooltip, bug found thanks to #3978 * fix bogus date * remove unused var * try to silence sonarqube * #4026 try to use an absolute path * #4026 log the failing script file * #4023 finally remove TableBuilder * #4023 convert to Gtk.Grid * timeout handler uses invalid attribute name * #4023 convert to grid * convert to Gtk.Grid * cosmetic * value returned should always be a string * #3978 force include pycryptography * #4023 convert to grid * Gtk3 had changed the get_pointer() return value * #4023 silence table warning * #4023 silence popup warnings * simplify using f-strings * show the rounded value, closer to the real value * #4025 one more redundant \'%\' with f-string * #4023 don\'t warn if dec_avif is missing * #4023 try to ensure we start printing on a new line * #4025 f-strings means we don\'t have to escape \'%\' * Thu Oct 05 2023 scott.bradnickAATTsuse.com- Update to version 6.0+git20231005.a3c265d6: * use the program wrapper to name the process and window * remove unused screen, always 0 with Gtk 3 * Cython 3.0.3 * #3964 oops: forgot to add the configure scripts * #3964 run configure sub-windows as dialogs * destroying windows causes crashes on MS Windows * #3964 preparatory refactoring for new \'configure\' GUIs * stricter types * match renaming * #3810 swap host and guest * move qrcode dialog with the other gtk dialogs * #4021 expose scaled size so clients can upscale * cosmetic: missing closing bracket in debug * fix crashes on MS Windows * damn: git reset un-added this file * misspelt package name * #3810 add virtio-ivshmem documentation * typo * fix all dbus builds by using autotools * wheel is available in appstream * use the default location * move opengl example code * remove global include dir * missed during gobject bindings refactoring * simplify * whitespace * #3978 cythonized versions can\'t be executed as files * generate the gui versions of the exec tools * git reset un-added the files... * fix deprecation warning * Cython can\'t handle the metaclass as a type? * #3945 build more packages for non-default python * remove outdated email address * build pyopengl for non-default python * find calling module on longer Cython call stack * clients can send us plain strings * qrcode: gracefully fail during menu creation * missing subcommand in usage text * fix relative paths, disable button if script not found * force Gtk v3 * watcher pid must be an int, specify Gtk version and initialize display source * don\'t expose numpy types * can\'t add tuple to a list * fix refactoring: video_helper renamed * max_display_no is an int * #3978 explicitly include modules that py2exe can\'t detect in cythonized modules * remove TLS / SSL versions (deprecated) * remove prefix, fix u2f tool path * remove prefix and match move * #3978 cythonize gl gtk3 module * fix gl gtk3 module path * remove debug * remove nasty_rgb_via_png_paint * #3978 Cythonized version uses stricter type checks * #3978 include xpra.client.gtk3 explicitly * #3978 more cleanups and refactoring * #3978 cythonized version is more strict * update packaging to match refactoring * #3978 more refactoring * move all dialogs and examples to gtk_common * correct type hint for exit code * #3978 profile must be a string * #4017 fix MacOS arm64 download links * #3978 cythonize more and automatically * frominfo can also be a tuple * remove redundant gst prefix * include renamed splash screen * needed to force it because of gitignore * split util functions * doh: options do still have the \'_auth\' suffix * rename auth modules, window source * simplify: rename * move mdns bits where they belong * remove redundant suffix * remove redundant \'mixin\' prefix for features * simplify filenames * remove redundant suffix * remove redundant prefix * make colorstreamhandler optional * ignore warnings when setting window opacity * silence gi import warnings * #4014 forward port of b9d8fc7de69e8675a9ac50fe534fd9f1a2d34d60 * #2177 silence more Gtk warnings * ExitValue is an int or ExitCode * always clean the signal watcher pipes * use \'exec\' debug logger for the signal watcher * use the correct python command to execute signal watcher * don\'t shadow the \'label\' function name * #2177 silence more Gtk warnings * #3978 client properties must be a dict * #2177 silence Gtk set_image related warnings * silence warnings #2177 * use correct type * Reverse the aspect ratio (height, width) in webcam-start message * we need a version, assume 0.x * #3978 Cythonize a lot more * #3978 stronger type hints * #3978 do_legacy_bool_parse requires a str * #3978 Cython can raise a ValueError here * #3978 exit code is an int * #3978 function signature requires a dict * bell name should always be a string * accept_client_ssh_agent requires a string * don\'t try to cythonize more using an old Cython * use plain dict for info data * exclude more modules with older Cython * doh: special case for typedict, don\'t fall through * #3978 fix top client, skip util with older versions * remove redundant prefix * typedict is a dict, but Cython is more strict * #3978 workaround for older versions of Cython * #3978 some files require Cython v3 * ExitCode is a valid return value * updict has been removed * return a dict instance not a typedict * avoid cythonization errors * bah, ExitCode is an int.. * \'file_transfer\' would be hard to cythonize * remove more redundant prefixes * remove redundant hints * pointer.relative was already available in v3 * #3978 even more modules can be cythonized * minor type fixes * function must return a tuple of strings * message must be a string * Revert \"latest VirtualBox driver does work, at last\" * better debug logging * remove legacy flat dictionaries * headers is not a dict * add server script test * remove redundant prefix * socket_filename must be a str * exit the splash screen on read errors * avoid uinput warning when it should not be used * less certainty in the warnings * one wayland capture warning is enough * with Python3 we can write memoryviews directly * add env option to force wrap mode * always read using memoryview * oops: always update start offset * simplify: add group to caps * use the same prefix for all attributes * all servers support notifications-close * shortcut out if bind=none * allow builds without the nvidia codecs * fps should be an integer * function has been removed * prefer native trays to Gtk.StatusIcon * remove VirtualBox gl check * avoid None value errors * socket_info is not always a string, can be a tuple * remove special legacy flag for \'scroll\' encoding * silence missing plugins warnings * capture and silence WGL mesa warnings * cosmetic * move docstring where it is needed * #3978 need to ignore more generated files * delete_tray_window no longer needs to return a value * update type hint to match new function purpose * simplify * #3978 cythonize more * NotifyIcon\'s main requires argv * use an int for sequence numbers * use a stronger type * more readable error * #3978 simplify and allow cythonization * fps is an int * dpi must be an int * oops: wrong attribute was set * file missed during refactoring * fixup cee8bc78c3b6d2e5d79227da452eef9b3cc2adaf * Revert \"always build with setuptools\" * move server components in a sub-module * always build with setuptools * #2998 move avif to codecs-extras * don\'t rebuild just because setup.py was updated * #3381 to exe or not to exe, sometimes * #4009 catch invalid display names earlier * #4006 MacOS menu code is instantiated before the client * remove \'Intel\' from greylist * latest VirtualBox driver does work, at last * #4005 v5 servers still check for this feature * bump release no to test updated dependencies * hard dependency on the python version * remove last link to the old mailing list * remove links to the old mailing list * better test for gnome and variants * Wed Sep 13 2023 scott.bradnickAATTsuse.com- Update to version 6.0+git20230913.0f036f0b: * better backwards compatibility * #3956 prefer Gtk.StatusIcon on every X11 desktop except gnome * restore \'help\' handling for video options * minor ruff warnings * forgot to include the cuda build script * unbreak the CI * #3808 build CUDA kernels in advance * move check to a function * require Cython 3 (fix check) * #3995 send the modified packet * don\'t setup ssh agent forwarding when proxing * no more string vs bytes problems here * simplify adding the \'Compressed\' wrapper * doh: use the new-value supplied * use dedicated flag for pings * #3956 try Gtk.StatusIcon first on non-gnome/kde xorg sessions * simplify: use lists without None values * cannot follow a tray * remove unused subclass * #3995 match new exception type * support prefixed encoding caps * don\'t send cursors without a matching encoding * #3999 safer automatic recursion * all supported versions have these features * Refactor pulseaudio \'--load=module arg1=value1 ...\' option creation * Create Xpra-Mic-Source pulseaudio remapped source for Chromium * Fix computation of microphone_enabled when \"on:device\" flag is provided * Parse \"Monitor of Sink\" instead of device.class when it is not reported * Clear props before processing each pactl output block unconditionally * assume the clipboard is enabled if we have caps * drop legacy keymap caps * even 3.x already had this flag * support legacy dpi caps for html5 client * #3987 expose more specific session-types * #3997 ignore missing cwd * only clone the video helper when needed * prevent race condition * #3582 don\'t include codec version info by default * all versions supported have \'ping-echo-sourceid\' * simplify threaded init server-source callback * simplify * constify * avoid warnings with older clients * now safe to use more structured data * simplify compatibility * remove unused function * handle namespaced proxy caps * simplify: \'control_commands\' is a list of strings * newer servers require a qualified value * remove legacy encryption caps * require namespace for encryption caps * remove unused mode * try not no flatten caps * remove legacy flattened caps * add type hints * we do have a command line option for this * bail out early * remove legacy \'deflate\' packet * unit tests need an \'after_handshake\' dummy function * oops, fixup 141e01705f25d4448201be624f091de32efa6774: only for python3 * #3956 wait for handshake to generate the menu * remove unused imports * never send None values * better formatting * #2197 suggest the gnome package * don\'t install python3-cups unless we\'re going to use it * #2197 add a \'xpra-client-gnome\' package * there are no python prefixed cups packages * we need setuptools to build with python3.12+ * we can\'t build pycuda for non-default python versions * update unit test to match new code requirements * remove more legacy options * remove more legacy flags * remove legacy flag * remove more legacy flags * lowest version we aim to be compatible for is v5 * all supported client versions have namespaced caps * drop support for non generic requests * all supported versions should set capability flags * all supported versions have \'connection-data\' * assume all servers can change bandwidth limit * more useful settings? * #3943 add dpi settings in manifest file * move cuda workarounds together * bail out early * #3959 the default cursor data already includes the encoding * remove broken test file * #3988 polymorphic functions are hard * #3930 use dataclass * #3930 simplify * #3930 Python 3.8+ provides this function * save space: remove unused codec DLLs * #3711 tray restart fixes * cosmetic * we don\'t need numpy without cuda * strict type fixes * fix warning so ruff can run * we don\'t need numpy unless we enable the nvidia codecs * simplify * missed from refactoring * can\'t use bare types * stricter argtypes and restype * #3711 add debug logging of event numbers * #3988 silence modify_font warnings * #3988 silence get_pointer warnings * #3988 add arguments to ctypes definition * Add gtk3 and groff to mingw dependencies. * packets don\'t use strings any more * add debug logging * #3985 must initialize to False * unused import * minor refactoring fixups * remove \'u\' string workaround function * fix: warn once per unkown preset * #3873 workaround the deprecated presets * use f-strings, remove \'engs\' * #3873 preparatory refactoring * #3929 CI now needs it as well * we don\'t use ffmpeg anymore * #3929 use pkg-config to find xxhash lib * #3929 install xxhash for MS Windows builds * #3929 build against the system xxhash libs * more refactoring forgotten by pycharm (cython files) * same as 0b19be6ef716a2af7988d15d433ae4fc5e8095d4 but for arm64 * don\'t build openh264 on Fedora-riscv64 * simplify * #3592 also build openh264 DEB codec * missed x264 from codecs! * forgot to update packaging file list * #3592 we want at least one h264 decoder enabled * #3930 all supported clients handle the flush flag * simplify: always enable notifications actions * vsock is now a submodule * pycharm refactoring missed these * remove debug logging * assorted refactoring fixups * one more redundant prefix * pycharm missed this during refactoring * move cuda bits to their own submodule * forgot to add the renamed files * remove more redundant prefixes * fixup class merge * forgot to remove yaml here * add flow info * match simplified packet types from 5dd1336a5cc9f7863f796b5ca399f460c775a676 * remove redundant superclass * oops: fixup 5dd1336a5cc9f7863f796b5ca399f460c775a676 * #3930 use prefixed capability for webcam * #3930 use the same prefix for all subsystem packets * remove redundant prefixes * #3930 rename for consistency with prefix * oops: attribute has been removed * #3981 add webcam subsystem * #3981 more subsystems docs * #3930 remove unused legacy flags * Tue Sep 05 2023 Scott Bradnick - Converting python3- * items to %{python_ver}- * * Sun Sep 03 2023 Scott Bradnick - Leap 15.5 and 15.6 _can_ build again with Python3.11 * Need to have the following packages available: * python3[11]-Cython v3.0.2 * python3[11]-flit-core v3.8.0 * python3[11]-wheel v0.40.0 * The versions from devel:languages:python work, but until those are part of the Leap images, this isn\'t possible * Fri Sep 01 2023 scott.bradnickAATTsuse.com- Update to version v6.0+git20230901.77211231: * rename clipboard module for better consistency * #3930 remove yaml * remove last references to rencode and bencode * #3930 remove unprefixed legacy compatibility * #3981 mode subsystems doc stubs * pynvml 12.535.108 * #3981 add documentation on network protocol * https://github.com/inducer/pyopencl/pull/699/files * #3978 minor fixes for Cython * #3976 fix check for existing dbus instance * try harder to show a valid exception message * move x11 dependencies to x11 package * better warning message for invalid audio requests * if \'load-balancing\' is unset, don\'t log a warning * silence zeroconf update errors * Cython 3.0.2 * FULL_INFO valid range is 0..2 * #3592 remove legacy flat audio caps * #3592 make more assumptions about client caps * #56 assume that we can resize the display precisely * #3973 move code to a testable function * #3973 doh, use the actual mode string * log the arguments * don\'t try to build pycuda for default python * EL8 can now build pycuda using a python3.11 prefix * group imports * #3973 try to reverse the mode alias to find the argument * #3974 Python 3.12 compatibility * Cython 3.0.1 * #3974 no python3.10-cups package in Fedora 39? * #3974 workaround debug package errors on Fedora 39 * doh: typo * #3974 workaround pandoc builds without lua filters in F39 * simplify: require Cython 3 * remove unused code: Ubuntu 18.04 is not supported * missing f-string qualifier * improve test coverage * workaround for Fedora 39 builds * #3968 move \'xpra-codecs-nvidia\' to suggests * fixup RHEL builds: no pycups * doh: use correct path for archive * #3945 make it possible to build multiple python versions in parallel * get revision number from source archive * prettify output format * #3945 simplify? only a single package should obsolete another one * #3968 move python3-pycuda to recommends * typo * update changelog, remove duplicated entry * Mon Aug 21 2023 scott.bradnickAATTsuse.com- Update to version 6.0+git20230821.3093d53d: * #3967 authenticate_check is now an attribute, set it * no need for quotes, silence buggy? rule * Mon Aug 21 2023 scott.bradnickAATTsuse.com- Update to version 6.0+git20230821.3434dd60: * add pre-commit hooks * fix forwarding of \'draw\' packets with stripped alpha * simplify: load pycups from per-platform implementation * silence some minor ruff linter warnings * search & replace gone wrong * unused imports * oops: typo * oops: undefined variable * fixup 5995d0efd3dcc9974eeb874fd338f5b8db8ecea4: pyupgrade messed this one up * Sun Aug 20 2023 scott.bradnickAATTsuse.com- Update to version 6.0+git20230820.7cda1ac3: * partial revert of syntax upgrade * add arm64 MacOS download link * modernize the codebase using pyupgrade * run opengl check on MacOS and MS Windows * another stray dash * use the alias * correct NSObject init call * MacOS \'configure-display\' packets can be large because of ICC data * just \'install\', using --root messes things up * strip newlines from arch * prettier output, with unit tests * safe to enable again thanks to aaf546ba056f3afac68069c00364d071d9a2baa0 * typo caused warnings * support namespaced dpi caps * the bind option is a list * the bundler needs the xpra script installed * log clipboard backend failures * logging pids without \'=\' for consistency * search and replace fixup * add screenshot on home page * fixup search and replace gone wrong * don\'t try to enable dbus client mixin on win32 or macos * missing a listener socket should not be fatal * add debug logging * simplify * fix xdg import * decode compressed logging packets * update logging to match new function purpose * simplify * remove outdated info, use the new rc location * oops: 43ce90cc5d77ccfdd6144f130189f9db9ff1f796 missed the trailing newline * don\'t try to remove sockets that don\'t exist * firewall-cmd is part of firewalld * move gtk-update-icon-cache to client-gtk3 * duplicate obsoletes / conflicts, remove duplicated group * fixup search and replace gone wrong * we need a logger for printing the warning * rename to avoid linter warnings * refactoring misnamed * missed from conversion to dataclass * import cleanup * fixup linter warnings: reserved keyword * oops: no access to import exception here * fixup: missing import * type hint fixes * fixup refactoring: not self here * remove unused imports * fixup: match parameter name change * remove support for ancient versions * re-instate missing function * #3703 use correct exception type for invalid data * #3945 more helpful error message * always build an \'xpra\' metapackage * simplify? * #3945 simplify and manage all dependencies / requires ourselves * recommend x11 package at top level * simplify? * #3945 \'obsoletes\' should trigger removal of older versions * #3945 enable upgrades to v6 on RHEL and clones * fix check: prefix is always set * try harder to prevent conflicts with older versions * try harder to manage the dependencies ourselves * another stray dash * fix double dash in filename * #3962 auto dependencies get confused by our python3 command * oops: deps were moved to description * the python-prefixed xpra packages do provide \'xpra\' * ignore debug which is empty and errors out on F37 * recommend is strong enough * the bin prefix is only on Fedora * oops: selinux is not related to multi-python3 * #3945 RHEL and clones don\'t have a valid \'python3\' * download source and verify checksum * generic repository dependency table * check Python version early * #3961 add unit test * more instances of misplaced \'| None\' syntax * Moved deletion of x,y to where those variables live * CI choked on this syntax * enable source fetch since we have the checksum * minor linter warnings * Debian and Ubuntu choke on evdi * missing import (fixup 4713b7a4d2e2b3b5a980683725817f26262686b1) * implement non-32 formats for ClientMessage * #3945 more common scripts moved to \'xpra-filesystem\' * #3930 use dataclass * cosmetic * #3930 switch to monotonic_ns * oops: wrong test * we now have to fake the \'video\' attribute * we now have to enable FULL_INFO to test get_sys_info * #3952 don\'t show empty video info * #3582 limit default info output further * #3592 missed from 058f8f229d514848fabfc77de72da7d7cf7a490a * #3953 turn off most subsystems when minimal=yes * remove unused f-strings * remove unused f-strings * #3952 add switch to disable video * #3945 ensure the main scripts are version agnostic * add newline at end of files * #3945 \'filesystem\' package conflicts with older \'common\' package * explicitly state that we always return \'True\' * #3930 use standard library * #3930 make it easier to trap exceptions and log them * #3930 convert to use dataclass * add type hint * add python icon * #3945 use the same spec file for pycairo * show python implementation and some version details * simplify syntax * #3945 split into new common \'filesystem\' package * fix formatting of old changelog entry * #3945 always use prefix * remove duplicated package * silence warnings with rpmspec * doh: prefix already includes \'-\' * #3945 we always need pillow * #3592 remove x265 * #3930 replaced with standard library managers * #3945 RHEL fixes * #3945 use madvise * #3945 only override when needed * RHEL doesn\'t have this package * only build xpra for newer python versions * openh264 is only for Fedora * #3945 no need to block specific distros * #3945 build python3.11 packages for RHEL * #3945 build python3.10 and python3.12 packages for Fedora * silence sonarqube warnings * fixup quit_handler changes * #3930 simplify * #3930 use merge-update-operator * #3930 expose native thread id * #3930 self-documenting expresssions * #3930 use SimpleQueue where sufficient * #3930 replace HideStdErr with redirect_stderr * #3930 replace DummyContextManager with nullcontext * we don\'t support python-lzo at all any more * we don\'t need python-lz4 * no support for Fedora versions older than 37 * #3945 support build for multiple PYTHON3 targets * #3945 build packages for \'PYTHON3\' env var version * avoid sonarqube linter warning? * extraneous f-string prefix * missing f-string prefix * missed changelog entry * forgot to remove ffmpeg here * don\'t just warn, fail the build * more imports needed to be re-added * bump the debian script version * forgot to also re-add the import.. * unbreak installations _with_ dbus... * something mangled this line * older versions of cython choke on bare types * handle missing python-dbus more gracefully * missed from renaming * more helpful failure message * fix python3.10: \'type\' object is not subscriptable * bump version * #3930 don\'t import from \'typing\' if we don\'t have to * #3930 replace \'Optional\' with \'| None\' * #3592 missed from 20bb5f04233dc650022bc67d5904566d1b158af9 * #3592 remove legacy packet format parsing code * #3592 remove ffmpeg modules and dependencies * #3592 remove legacy workarounds * #3592 use pkcs7 padding by default * #3592 remove legacy options, \'set-deflate\' packet * #3592 remove support for dummy versions older than 0.4 * #3592 remove outdated combinations * #3592 remove unused rpc subsystem * forgot to remove \'zlib\' here * handle missing mmap caps gracefully * #3592 with Python 3.10+, we don\'t need typing-extensions * #3592 all distros should support zstd nowadays? * #3592 we require int(IntEnum) support * #3592 generic \'wants\' flags * #3592 safe to remove net_utf8 since we require rencodeplus * #3592 assume wants_default_cursor * #3592 assume randr_notify is available * #3592 remove fakeXinerama * require structured mmap caps * #3592 assume flush is used * #3592 assume eos is supported * #3592 assume xdg-menu-update is supported * #3592 assume info-namespace (unused anyway?) * #3592 remove ogg-latency-fix and bundle-metadata * #3592 remove zlib compression * remove debug logging * #3592 require rencodeplus, remove bencode and rencode * #3592 require gcc 9 or later * #3592 remove support for nvcc versions older than 11.6 * #3592 remove old libav shim * require Python 3.10 or later * dep update and fixup typo * #3932 clear socket upgrade options * source is now a required parameter * don\'t enable ffmpeg encoder by default * #3750 don\'t enable gstreamer encoder by default * #3937 replace remaining packet modifications * fix variable name * #3937 use utility function to modify packets * remove \'Python3\' from filenames * #3934 add \'freetype2\' to typelibs we need * #3750 use the correct stream attributes for av1 * more consistent way of easily selecting decoder formats * don\'t error out on missing codecs * don\'t use XDG_RUNTIME_DIR on MacOS * adapt to prefix / root changes in 416b65a9998f4430b09cf9227534de46dfcb924b * remove setuptools workaround, run \'bootstrap\' early * missing CR looks bad on github * #3937 initialize all attributes * #3936 the beta repository now includese riscv64 packages * don\'t do parallel builds on arm64 or riscv * #3930 add typing-extensions to CI env * #3930 workaround for older python versions * #3936 don\'t enable parallel builds on riscv * #3936 no x264 for riscv64 - for now? * add riscv64 package list * bump version * we can\'t use --no-lintian with sid riscv64 * add Ubuntu Mantic Minotaur * python packaging workaround everywhere * add code of conduct * missing prefix * #3667 no longer failing it seems? * refactor and avoid one more typo * typo * more type hints * add type hints * try to clean before the next test * #3667 tests have been fixed * #3933 skip newlines until we find the first ws header * send all heaaders in a single write call * #3933 add debug logging * urrlib validates port numbers for us * simplify test code, more detailed error message * #3667 use a fake html5 client to enable websocket connections * fix type hint * fix XPRA_USE_CYTHON_BENCODE=0 as used by the unit tests * this should now pass again, even on the CI * fix file caps parsing * we need strings here * add debug logging * config file limit is actually 1G * easier using \'--root=\' ? * use the same default value as the config file * missing imports / cleanup * fix debug logging * typo * always cleanup * use both prefix and root to install datadirs * more type hints, require source for make_hello * missing import * use constant * doh: syntax error * #3927 add type hints * remove unused attribute * #3927 stricter data types * #3927 AATTSuppressWarnings is still not supported by SonarQube, but NOSONAR is * older versions can\'t parse \' *tuple\' * xxHash 0.8.2 * #3928 silence Java warnings due to huge command lines * is this syntax working with older versions like the CI? * more resilient code, fixes linter warning * use ugly syntax for older Python versions * #3927 annotate all packet handlers * #3927 last few sonarqube warnings * wait value is in milliseconds * #3807 Python 3.12 should now build without warnings * add more changes * add link to the ticket * add link to discord * update dummy info * split icon loading function, fix missing idle_add handler * better error message format * rgb_format must always be a string * force x11 backend in \'opengl\' check, for now * make code more reusable * missing import * #3807 fix warnings with Python 3.12 and Cython 3.0 * doh: we need an exception to log * \'password_file\' is always a string * update the release notes * #3922 improve \'challenge-handlers\' documentation * no need to use wildcard * Cython 3.0.0 * try to workaround buggy tools on centos stream8 * simplify regex * minor linter warnings * don\'t override parameter * more linter warnings * no need to use an attribute * define all build attributes in init * update test to use strings * missing import * more linter warnings * don\'t divert logging in debug mode * bytes remnant * match switch to strings, add missing type hint * fixup missing type hint import * match change in superclass * #3593 update ssh agent symlink when ui driver changes * #3593 more reliable cleanup of agent symlinks * #3593 move function to net.ssh.agent * #3623 recommend libnm with xpra client * missing bindings raises a ValueError... * #3623 use NM to get adapter type * move inline function to static function for readability * whitelist for env vars preserved * simplify: use strings * str vs bytes bug: dbus env uses bytes * remove debug * type hints * also force x11 backend for pyopengl * move win32 specific auth code to platform module * re-use existing mode * more type hints * log details about the mode we\'re creating * always return a boolean * type hints fixes * simplify * missing type hint import * events now use plain window xid * update test to use tuple * use the new key * more type hint fixes * exclude more optional modules * Cython 3.0.0rc2 * #3778 support legacy ssh:host:display format * prevent splash from hanging * shortcut out on any exit code * don\'t shadow the function name * #3778 don\'t specify a default username * simplify and wait for all IO threads * assume dummy 0.4 is available * we must compare using strings * stderr_print (now renamed) always adds newline * #3313 enable auto-upgrades by default * #3313 auto-upgrade tcp sockets to ssl * missing packet type * also use no-prefix colour output for \'id\' subcommand * duplicated newline * add debug logging * use the correct filename for saving the ssl cert * pynvml 11.535.77 * Cython 3.0.0rc1 * aioquic 0.9.21 * also match sddm * #3917 try hard to find a valid XAUTHORITY file * new \'interface\' requires this method * minor linter warnings * #3913 earlier and stricter packet validation * Fri Jul 07 2023 scott.bradnickAATTsuse.com- Update to version 5.0+git20230706.bb1ecc9b: * fix invalid syntax introduced by bef7c7e4c67102689b13ccae8cc13c5a86e9af57 * cosmetic * doh: invert check * more minor pycharm linter warnings * simplify: let Popen deal with strings * string vs bytes confusion: method never called? * get_all_x11_layouts() uses the python lxml module * more type fixes * don\'t try to compare bytes with strings * protocol error packet creation failure * pycharm cosmetic warnings * typo * doh: try both schemes * verify the digest is always a byte string * line data indexes had changed * #3881 use text mode to avoid encoding issues * more type hints fixes * type hints fixes * lookup alternate auto-proxy scheme * better error message * fix missing import * #3914 use the correct namespace * oops: missing import * #3914 python-pillow removed a useful constant alias * #3909 forgot to update to new api here * type hints and linter fixes * forward any pre-read data we may have * use integers explicitly * exception is not used * honour all \'start\' options with remote starts * make more authentication handler options configurable * fixup table formatting and some ticket links * remove duplicated files * #3899 fixup a6dfd3e116280e39c1e8de1bffe7585df4660c1f * #3899 allow keyboard shortcuts in readonly mode * add type hints * add Debian Trixie: copy bookworm library versions * Fri Jul 07 2023 Scott Bradnick - Removing more Recommends: * python3-asn1crypto * python3-cffi * python3-decorator * python3-idna * python3-ipaddress * python3-packaging * python3-pyasn1 * python3-six * Fri Jul 07 2023 Scott Bradnick - Removing some Requires/Recommends after discussion w/ upstream developer * https://github.com/orgs/Xpra-org/discussions/3902 * Fri Jun 30 2023 Scott Bradnick - Adjusting \'ffmpeg_ver\' to 6 for \'suse_version >= 1550\' * Wed Jun 28 2023 Scott Bradnick - Adding \"Source100: xpra-rpmlintrc\" to appease SR#1095874 being declined * Wed Jun 21 2023 Scott Bradnick - Adding more Recommends per: https://github.com/Xpra-org/xpra/blob/master/docs/Build/Dependencies.md * Tue Jun 20 2023 scott.bradnickAATTsuse.com- Update to version 5.0+git20230617.2a908f54: * minor type hint fixes * use the more common filename * more type hints * replace buster with trixie * same file, but more consistent filename * #3863 use the new key everywhere * more type hints * unused import * get_nsview_ptr needs a gdk window * misname callback * PyOpenGL-accelerate 3.1.7 requires numpy to load * more type hints * try harder to format the log record * don\'t ship cython\'s html files * no need for nested exceptions * skip None values * \'<\' means \'<=\' and we have to use \'<<\' to mean less than * replace \'assert\' with more specific exception types * try harder to prevent conflicts with older \'xpra\' packages * wrap all tuples, for better compatibility with type hints * older versions of Python struggle with the type hints syntax * more type hints * missing build deps * better exception message * compatibility with newer versions of python-cryptography * reuse the new util function * don\'t access stderr directly * don\'t build nvidia modules if cuda is disabled * #3895 use xpra[_cmd].exe to launch subcommands * unused import * #3895 better error message * fixup pydev spurious import, and add more hints * avoid crashes on MS Windows when exiting using key shortcuts * Make pulseaudio scheduling configurable via XPRA_PULSEAUDIO_ * env-vars * cosmetic (for testing gpg signature) * testing signature * minor type hints updates * more type hints * do_process_mouse_common must return a bool * #3872 dumb capture and encode streaming mode * #3750 make code reusable * more type hints * #3750 register the correct type * more type hints * whitespace * silence warning * minor type hint update * better debug logging and error handling * also handle \'ValueError\' in fallback path * better debug logging, type hint * #3883 all focus updates must go through \'recheck\' * better wording * remove debug * show more of the overly large packets * handle one pixel oddities more gracefully * missing return value (oops) * always free the AVFrame in error paths * fix libspng link * fixup mess that pydev added * fix invalid type hint * improve type hints * more type hints * more type hints * fix vsock parsing: use the new function name * pylsqpack 0.3.17 * more type hints * fix type hint * more type hints * fix linter warning * fix linter warnings * don\'t rely on initialization order * VideoSubregion needs timeout_add and source_remove defined * remove unused import * more type hints * #3882 fixup 053b87fb56664ca2bebed23a577af4c508440691 * improved type hints * type hints for delegated platform functions * return None explicitly * whitespace * remove now unused import * linter warning * don\'t bother with session tickets * more linter warnings * more complete implementation: add close_notify * doh: server_window_signals is a whitelist * add type hints * f-stringify * re-enable wheel event handler * debug to match actual code * missed module from name stripping * minor linter type hints warnings * saner handling of scalar X11 properties * #1995 the new api doesn\'t use the \'format\' attribute * better detection of X11 vs Wayland * add debug logging, use default display from env * oops: forgot to update this test * setuptools workaround needs another workaround * use consistent datatypes for authentication functions * fix more linter warnings and add type hints * fix more linter warnings and add type hints * silence linter warnings * factors use a dictionary with further details * rounding gives us more \"precision\" of sorts * add type hints * add docstring, fix linter warnings * a cleaner / simpler method makes the linter happier * hide python logging logger instance attribute * don\'t access the \'logging\' logger directly * remove unused code * keep track of shell commands * merge \'gtk_base\' into gtk3 * make code easier to follow * use List to make it easier to manipulate * remove unused attribute * clearer decision making * fix crashes on win32 when using keys to close * move all environment init to platform support files * filename was wrong, did not match anything * #3875 all entrypoints need the cryptography openssl workaround * fix linter warnings on non-posix OSes * some Cython / gcc versions can\'t handle XIf_predicate * #3877 fixup 1da6fe5bbe9e456d5aae12bfd1e6501dbce67281 * add xsettings type * syntax compatible with older Python versions * use hints from \'typing\' module * #3872 add \'stream\' encoding option * type hints * missed from mass rename * fix minor linter warnings * minor type hints updates * missed from mass renaming * minor linter warnings, type hints * actually replace with new option name * hook horizontal wheel events * re-enable event handlers (was libffi build issue?) * remove unused code * don\'t close twice - as was intended? * actually update the \'senstivity\' of the maximize option * doh: check all values * don\'t raise generic \'Exception\' * #1995 fixup type name * simplify server mixin names * simplify source mixin names * use typing module for hints * move gtk bits to gtk server base * Mon May 29 2023 scott.bradnickAATTsuse.com- Update to version 5.0+git20230529.246ad1fe: * round to nearest for smoother scrolling * more mypy type hints * typo * #3868 catch KeyError and log it * more mypy type hints and fixes * #3859 fix undefined variable * Mar 12 2023 was a Sunday * doh * find_session_by_name now always returns a string * accept tuples as packets, silence validation warnings during tests * more mostly automatic type hints * more mypy inspired type hints and tweaks * #3867 update clipboard to use XIDs directly * more mypy inspired type hints * mypy finds latent bugs * mypy config and fixes * repos: define available architectures (amd64, arm64) for deb822-format On multi-arch systems (e.g. i386<->amd64) without specification of supported architectures \"apt update\" warns about missing packages (e.g. \"Skipping acquire of configured file \'main/binary-i386/Packages\' as repository \'https://xpra.org jammy InRelease\' doesn\'t support architecture \'i386\'\") * add type hints * Fix side buttons on win32 shadow server * control-c just gets out * Thu May 25 2023 scott.bradnickAATTsuse.com- Update to version 5.0+git20230525.b53aab5f: * #3582 only include socket info when XPRA_FULL_INFO>0 * move exception handling * trays don\'t send the buttons parameter * strip newlines from backtrace * simplify: make_instance will discard None values * explicit: always return a type, or None * unused import * compatibility with the latest cx_Freeze * Thu May 25 2023 scott.bradnickAATTsuse.com- Update to version 5.0+git20230525.08cf69d4: * #1995 fixup tray support * simplify: convert to tuple of strings early * also use appindicator for application trays * don\'t try to use Gtk.StatusIcon on wayland * #3789 import can raise a ValueError.. * also remove the patch file * Cython 3.0.0b3 * #3860 add missing fake function * one more missed from the bindings renaming * oops: searched and replaced wrong * forgot to update some tests in eeb3b2686626f7f236d2d70680fcb4f58d811ac7 * even more detailed error message * typo * match signature change for X11Window.XGetWindowProperty * rename x11 bindings (strip duplicated string) * more detailed error messages * debug logging to match new function names * forgot to update test * missed from 99731ac62e633d4c8b304f8f04fbe8ad60f71735 * just use the default screen * more resilient checks * #1995 remove xsettings from gtk prop, display source shim * #1995 strip out more gtk bits * oops: \'reject\' is a local function * add type hints * don\'t try to stop the same timer twice * more helpful failure message * fixup \'init-from\' debugging * add some project urls * #3822 copy window depth and visual from parent window * this should not be needed * rename attribute for more consistency * only use synthetic unfocus events when needed * linter warning * typo * fix linter warning * #1995 split pure-X11 event parsing into a new module * move get_children to pure X11 bindings * simplify client rejection handling * add type hints * we can\'t get the server time from the root window * fixup! Support set_platform_layout in posix platform keyboard * fixup! Support set_platform_layout in win32 platform keyboard * fixup! Round-robin the keyboard layout_option by next-keyboard-layout shortkey * fixup! Support bool args for --key-shortcut=action(yes,true,on|no,false,off) * Support set_platform_layout in posix platform keyboard * Support set_platform_layout in win32 platform keyboard * Round-robin the keyboard layout_option by next-keyboard-layout shortkey * Fix the win32 keyboard layout constants for \"ir\" / \"Persian (Standard)\" * Support bool args for --key-shortcut=action(yes,true,on|no,false,off) * Fix parsing of the action(\"str\") arguments for --key-shortcut option * #1995 use the X11 server time where really needed * #1995 re-implement server time * honour \'locked\' keyboard helper config * Revert \"use the non-deprecated variant\" * remove debug and cancel timer on exit, fix indentation * #3857 poll for keyboard layout changes * missed from cf6cd99967c7d185cce5be9fcee77e4c5c21210a which was meant to be a move * doh: signature must be a pair * move Gtk icon loopup out of x11 window models * #1995 use xid for the parking window * better debug and error messages * #3822 use plain X11 calls to manage the corral window * docs say we should not process events with negative codes * Fix side buttons on Win32 * #1995 don\'t try to manage the \'world-window\' * use xid wherever possible * unused imports * the spec says that hints must use \'sv\' as dictionary signature * only guess the signature if not provided * also wrap the keys * remove the gdk \'client_window\' from the models * fix calls to window_info: must use xid * use hex for xids, skip send-event=True * don\'t raise exceptions when a window is not found * oops: add missing \'destroy\' call, was leaking event receivers * more info details * make it easier to get the root xid * doh: we now use xid * no need to keep a reference to the root window here * fix desktop servers: pass xid * split root-overlay code into dedicated functions * use Python booleans where appropriate * move send_wm to pure x11 bindings module * typo: invalid logging category * validate xid to prevent bugs * only return the wm-name if we have a valid ewmh window * fast-start means no audio at all * doh: we can show the name, not the codec (which is missing) * #3822 don\'t keep a reference to the \'client-window\' * #1995 don\'t convert xid to window in event parser * #1995 extricate Gdk window from more models * #1995 use xid for damage, composite and event routing * #1995 start replacing Gdk.Window with plain xid * add debug logging * setting debug events once is enough * #3822 use a weak reference to the gdk window object * just use the cached dimensions * also send pings on websocket connections * show what capture backend is used * add debug logging: gtk is deactivating it.. * use the non-deprecated variant * this trims VirtualBox driver information * ensure the capture instance is ready to produce images * debug race condition in video helper init * prettier enums with older Python versions * we need more elements to play bell.wav * #3750 MSYS2 builds Streamer without NVidia support * zeroconf says \'server\' defaults to \'name\' * drop support for python-zeroconf versions older than 0.23 * #3848 use a different repo file for CentOS 7 * #3376 override the default logger with our own * #3850 move close-after-write handling * better XError handling * #3376 uvloop packaging for MacOS * use a more correct exit code * MacOS needs cffi, even with crypto baked in * #3376 use a new QuicConnection for each connection attempt * prettier * #3376 allow InitExit exception to propagate * enable color for \'info\' and \'version\' subcommands * lookup CC once and log it * fail early with a more useful message * more packaging workarounds * we don\'t build libaom on MacOS, skip the loader warning * make debug logging slightly less dense * #3850 use the asyncio thread to call transmit() and send_data() * remove unused logger, transmit after clearing flag * ignore empty values * doh: use any address, not local address * also clean cpp files * prefer IPv6 on Posix * clarify Xvfb vs Xdummy * recent versions already use a readable enum * disable substreams for now * fixup mmap datatypes * we have dropped the \'python-\' package prefix * #3850 only use IPv6 if the target is also IPv6 * prettier * ipv6 fixes for udp sockets * use a prefix for splash screen subprocess * prettier * #3850 try harder to handle failures more gracefully * #3850 simplify * #3850 skip empty values * #3850 honour empty SUBSTREAM_PACKET_TYPES * #3850 continue without sub-streams if we get a NoAvailablePushIDError * #3376 nothing can be sent if the closed flag is set * these amf elements are not available via MSYS2 on MS Windows * getuid is posix only * prefer python-zeroconf * try harder to support IPv6 addresses * improve IPv6 parsing * stop as soon as we find a valid backend * use explicit runtime error * typo * function is no longer exposed * update test to match refactoring * pydev, why here?? * add type hints * better debug logging * move function where it is used * only allow logging tweaks via env vars for non-root users * fix some linter warnings * audio is the new sound * re-use gstreamer utility functions more * #3750 add AMD AMF API encoders * #3750 re-use the same functions and encoder options * easier to read? * shadow window models can come and go (WIP) * #3750 notify user when capture fails * cache gcc version * convert enums to rencodable values * more type hints * add type hints and use stricter types * we need the pipewire gstreamer element for fd portal shadow * #3750 add pure video mode if the client supports h264 * only skip xpra\'s x11 displays * value must be a byte string * use the \'node_id\' as window id * don\'t exit server when capture fails * we don\'t need gui access for \'displays\' subcommand * simplify: _add_new_window_common already returns the wid * f-stringify and simplify * call x11 bindings more directly * missing logging argument * shortcut out if we can\'t access the display * simplify and verify \'default\' cursor encoding is supported before using it * don\'t modify the list passed in * if we\'re connecting locally, skip video modules * prettier formatting * remove debug logging * dummy 0.4.1 * better formatting * remove unused return value * minor warnings and type hints * avoid compilation errors with gcc version 7 and older * architecture in filename should be generic so it works on arm64 * this is no longer needed - I think * pydev made more of a mess * avoid errors when running without a client * fix logging arguments error * no av1enc on MacOS * avoid permissions issues with mv * use a nest dictionary * update and re-order * simplify * use namespace for mmap * continue and accept the connection even if we get errors * use the new form * use a different user uuid for sending the file * move notifications, build and remote-logging to a caps prefix * don\'t use \'hello\' packet to send the default cursor * only run systemd-run if supported * don\'t use \'--user\' argument as root * #3845 the newly added NV12 functions can\'t scale * allocate the buffer earlier, before locking the memory contexts * handle \'RGBA\' window icon data * make it easier to run some scripts without GLib installed * f-stringify and add debug * more setuptools paths workarounds :( * ugly but more generic way to figure out the PYTHONPATH * document empty method * add type hints * setuptools behave differently on CI, obviously * fix force_flush_queue: Queue objects have get but not read * honour the prefix as install dir * f-stringify more * try to lookup ipv6 interfaces * more resilient: run even without sys.stderr * f-stringify * remove unused logging argument * Thu May 04 2023 scott.bradnickAATTsuse.com- Update to version 5.0+git20230504.f088bc04: * pydev had made a mess of things * more linter warnings * linter finds real bugs * minor linter warnings * remove redundant statements * simplify * fix minor linter warnings * simplify * avoid raising a generic \'Exception\' * invalid lines get logged, that\'s enough * avoid raising a generic \'Exception\' * simplify * make props optional, same as uinput device * remove unused screen parameter * return value is always None * remove unused argument * fix linter warning: ignore device_id on win32 * list_directory takes a single arg * comment out unreachable code * x and y aren\'t meant to be defined in this code path * continue even if we can\'t create the cursor we want to use * pygst.version is long gone * ignore \'mod2\' aka \'Num_Lock\' with Wayland clients * update the window\'s title when the window manager changes * enumify * this is an x11 desktop, so use x11 functions * clients should not use the session dir for sockets * better wording for invalid connection handlers * add missing context managers * better formatting * oops: forgot to update some paths during refactoring * rename xposix -> posix * move more x11 functions out of (x)posix * this looks better, apparently * unset XDG_MENU_PREFIX in sanitize_env * #3842 don\'t set attach=True if the html5 client will be connecting * move default ports constants to net module * #3842 open html5 client with --html=open or --html=firefox * #3841 fixup, doh: continue to support specifying a local display * #3841 simpler syntax * handle runtime failures gracefully * disable debug logging * use the already-running shortcut for more modes * expand doesn\'t require x11 * always use lossless encoding for \'text\', even when scrolling * minor updates: use dummy v0.4 rather than patch * don\'t warn about socket o750 permission for shared sockets * this test still fails on CI * update list of failing tests * include more details in failure messages * continue to test fakeXinerama configs without the lib * fix error when remote version is missing * use tuples for version data * cosmetic * don\'t always use root fallback directories * add debug logging * f-stringify * don\'t use XAUTHORITY files that are not writable * simplify * more numeric versions * #3582 trim all version numbers * use numeric version numbers for opengl properties * also use numeric values for xpra versions * try harder to ensure that versions are numeric * doh: override os.environ * fail with an explicit message * simplify: merge version info functions * don\'t force \'x11\' Gdk backend so early * move \'bypass_no_gtk\' to the function that imports Gtk * don\'t force the x11 backend for shadow servers * doh: negate switch * make it possible to override these Gtk settings * simplify: move env code to the context manager * automatically choose the current wayland display if we have one * silence linter warnings * Fix links in Image-Depth.md * make root and max size optional * use AUTHENTICATION_FAILED for all session setup failures * fix client disconnection * remove unused code * we want StrEnum if available * missing attribute can raise a TypeError here * don\'t log api response at error level * update defaults to what 0.15 clients supported * #3838 older versions of GStreamer don\'t have \'leaky-type\' * older versions of Python don\'t have StrEnum * enumify move-resize constants * enumify notification ids * don\'t exit when screencast fails, just disconnect the client * log backtrace at debug level * enumify * simplify * Fixed many typos * show pid * doh: we need xauthority, just NOT under wayland shadow * try to prevent audio from accessing the DISPLAY * try to access keymap just once * log warning if we can\'t access the keymap * avoid crashes with wayland shadow servers * ignore \'none\' value in video / csc lists * don\'t save \'xauthority\' file for wayland shadow servers * skip XWayland and \'DEAD\' displays when shadowing * use saved xauthority location for access X11 displays * log compressed size * detect xwayland displays as best we can * make randr bindings more reusable * unused imports * #3582 add prefix for encryption caps * simplify * log hello in both directions * simplify / safer: use whitelisting * #3582 skip version info * #3592 add prefix for file caps * force X11 Gdk backend for opengl probing * unused import * move var to where it is used * delay loading of video modules * fix X11 vfb access check * #3835 add \'audio=on|off\' * unused default implementation should use a valid signature * choose the shadow backend based on the display * expose default info * parse wayland display sockets * add weak dep on package needed for patent encumbered libva codecs * better fix than 896c1228164f088545b1dbbc246bd8afa5d7c224: let the caller provide opts * restore wrongly commented out tests * find_session_by_name function takes a single argument * initial support for wayland session names * oops: test the return value * add some type hints * don\'t flood the screen or log file * the window mixin requires this one * handle missing features more gracefully * skip X11 warnings under wayland * add more details at debug level * handle missing display more gracefully * better reporting of opengl display probing errors * fail more gracefully when we can\'t access the display * add missing import * add type hints * #3582 don\'t expose encryption caps unless the connection needs them * simplify * odd sizes still cause us problems * when guessing the display, try LIVE ones * fix X11 socket filename (X prefix instead of \':\') * simplify * wait longer for the display to be killed * stat the socket to ensure the X11 server is alive * don\'t ignore BlockingIOError, simplify try block * list wayland displays in \'xpra displays\' * add type hint * enablenvh264dec unless we don\'t find nvidia hardware * cosmetic * require PyOpenGL 3.1.4 or later (released in 2019) * fail all nvidia modules the same way * also honour png/L when scrolling * nonsensical: partial revert of c5c8a105fb6c2b535bfed0169208d72433df43c5 * #3825 also honour \'png/P\' when scrolling * #3832 try harder to prevent invalid values sneaking in * ignore error closing session * #3826 honour png/P * fixup encoding validation, case matters * we don\'t use brotli for pixel data * simplify? * query list of encodings just once * fix error showing list of valid client encodings * #3824 it should be safe to re-enable this test now * enable intra-refresh and add env var toggle * ignore \'DISPLAY\' when we are shadowing a WAYLAND_DISPLAY * don\'t lose the \'WAYLAND_DISPLAY\' when shadowing * don\'t try to probe OpenGL on Wayland * having opengl properties is not sufficient * f-stringify * can\'t use intra-refresh with i_frame_reference>1 * there is no exception to show * audio wrapper uses \'cleanup\' but video interface calls it \'clean\'.. * Pass max buffer size to BrotliEncoderCompress * Update README - SonarQube + Discord * README.md - SonarQube test * Create build.yml * Create sonar-project.properties * #3823 fixup: having a dummy driver version would disable Xdummy * #3750 close the session when the last user exits * show which display is failing * #3750 working, albeit slow, fd portal support * unused import * honour \'nox11\' in pulseaudio utils * when using wayland screencasting, don\'t load any X11 bindings * use more explicit exception types * #3706 commented out stub for svt based encoders * intra refresh uses more bandwidth overall but avoids latency spikes with IDR frames * unused import * don\'t try to access X11 bindings under wayland * #3706 enable hevc decoding via vaapi * #3706 nable hevc via vaapi * #3706 my Intel laptop\'s libva can\'t do \'I420\' * include more details with missing module failures * #3706 package gstlibav on macos * #3808 simplify Fedora 38 builds * #3706 refactor element signal tracking * #3706 fix gc element leak * use correct stream format attributes for av1enc * #3706 don\'t enable gst nvenc by default * #3706 enable av1enc, use caps so we don\'t need a videoconvert * #3706 support more decoders, including nvdec * add backtrace at debug level * #3706 move some functions to common * #3706 add more decoding options - some need do-timestamp=1 * #3706 cleanup and add type annotations * #3822 always call trap pop after calling trap push * simplify * #3823 command line option for specifying the dummy driver version * add more CUDA error codes, move to a single location * nvidia-ml-py 11.525.112 * use full tests in verbose mode * use more explicit exceptions * #3706 refactoring + disable b-frames for now * fixup 863cc2c994cba84414a3350e7c17ca3b244f7613 * remove unused method and add annotations * convert gravity to an enum * add type annotations * the value is actually an int - the x264 codec can still use a float * #3818 support more combinations * #3706 refactoring, make it easier to understand * link to the html5 client * add more type annotations * #3706 make x264 speed and quality functions reusable * #3818 support create test wrappers from image file paths * #3818 make it easier to convert back to BGRX * add standard prefix for error * add standard prefix for error * #3816 gstreamer can pass the tests with uniform source images * simplify * use explicit exception types * #3706 doh, we want only a single byte per value * #3706 use the sample images for the given colorspace * #3818 alpha should be unused, but set it to opaque anyway * #3818 verify that the encoder doesn\'t modify the input buffer * make it possible to override \'readonly\' flag from Python * fixup 1755bea6889bd16f46d4ffcc82f744eba6f0249d * #3706 add more complete roundtrip tests * improve exceptions and their messages * doh: we have to repeat the package name here * silence linter warnings * test all combinations of encoders and decoders * remove outdated mpeg1 and mpeg2 encodings * add test for YUV444P * make test code reusable * improve exception message * remove redundant lists * make this the default list for all centos builds * simplify: only covert to bytes when calling C api * expose the profile with the initial frame * the profile must be a byte string * #3706 simplify * add env var for selecting a profile for all csc modes * fix GLib lost timer warnings * #3706 increase initial timeout * #3706 log more codec details with timeout errors * add type hints * #3706 move some code out of the global scope * #3706 need to specify the stream-format * more mixins rely on \'server_packet_types\' to enable features * #2556 reorder mixins so the xdg-menu is sent after the windows * this is the generic module, not xdg related * this test only fails on the CI * fix errors logging the raw packet size * use a method to modifying attributes * don\'t bother showing the bitness * #3812 fix logging of packet sizes, log sending too * #3592 older versions can\'t handle a nested dictionary * make it possible to auto-recurse down dictionaries * whitespace * #3812 use \'configure-display\' to send \'icc\' data after the handshake * #1942 for now, \'desktop-size\' is still needed to trigger set_screen_size * #3813 add \'icc\' data to \'configure-display\' packet * move SYNC_ICC env option to common location * #1942 use new packet format for configuring the display * defaults can use immutable tuples * re-enable new packet types, but disable problematic sequence no * move dpi limits to common * #3812 filter out audio properties * #3812 filter out platform data * #3812 transparently lookup nested dictionaries with \'.\' separated keys * also filter out GLU.extensions * let them try to build, it will probably fail later * don\'t expose the them icon data by default * remove opengl extensions from caps unless FULL_INFO>1 * send the keyboard data after the connection is established * if we don\'t have keycodes to map, don\'t translate them * more readable * remove redundant args * don\'t build csc_cython * stop using private libraries * doh: fixup package name * remove extra debug logging * warn just once for all missing codecs * the compression test compares python-lz4 with our bindings * use the same display for all the authentication tests * #3680 by default turn off most options * make it easier to override the XPRA_COMMAND and XPRA_CONF_DIR * we no longer use private libs * #3664 broken symlinks don\'t exist, but are links.. * AFAICT, we don\'t need this * fix CI: use full imports * more actionable message * make it less scary to run the xpra-client-gtk without xpra-x11 * unused imports * less scary message when X11 bell cannot be used * only warn if something is actually missing * #3811 we need the Xorg server installed to detect its path * #3811 we have dummy builds for all RHEL and clones * use dedicated space for video decoder info * #3796 show paint stats on window info * most backing info properties are redundant here * make it easier to test initialization thread delays * \'Breaks\' should prevent file conflicts during upgrades from earlier versions * try harder to prevent conflicts with older versions during upgrades * #3807 KISS: just make the pxd match the pyx * #3807 use the same uint64_t definition in the pxd * #3807 CI unit tests just runs \'install\'.. * #3807 auto-apply the patch to fix builds with older versions of Cython * nogil should be after noexcept * #3807 also add explicit \'noexcept\' to pxd * #3807 add explicit \'noexcept\' * even the ones loosely matched should be listed * make limit configurable * partial revert of 6c924cb21f804568ff9586e16ded608898af84d6: exclude nvidia bits * silence more linter warnings * skip warnings with clang * silence warnings * #3703 add sample pkgconfig file * cleanup * css overrides belong in common * #3809 the spinner code has been moved to gui * #3808 also skip generating the \'xpra-codecs-nvidia\' package on Fedora 38 * #3808 doh, workaround is needed for Fedora 38 and later * #3808 explicitly disable nvidia for Fedora 38 * #3808 doh: actually add the patch * #3808 build latest Cython for all Fedora builds * #3808 disable CUDA and strict mode on Fedora 38, for now * avoid warning, bundle the patch * #3808 add py3.12 patch * we don\'t want a python2 shebang * convert to pkgconfig(lib) * this is no longer necessary * #3807 coerce setuptools * match file renaming * split xpra.buffers from modules * simplify: use aliases for cython switch * avoid errors if \'nvidia_codecs\' value ends up being empty * make it possible to build without cython * detect cuda availability * nvidia disabled disables cuda kernels and rebuild * we need pkgconfig * avoid warning * this version does build OK * make it possible to try cuda on unsupported platforms * simplify nvidia toggle * none of the RPM distros require the wrapper * skip xsettings dpi when the x11 bindings are missing * make more x11 bits optional * we always need the logger * minor linter warnings * make it possible to run the shadow server without xpra-x11 * verify we have xpra-x11 for the subcommands that need it * move gdk x11 display source init to a single location * fix zero dimension check * warn just once per missing encoding * #3806 recommend some more gstreamer elements * gtk3 graph was pointing to python3! * we don\'t use private libraries any more * we don\'t use private libraries any more * doh: typo * ignore another debuild generated file * the binary versions should always match * the default \'xpra\' package should be mostly unchanged * exclude extra codecs from codecs * newish distros can have more codecs enabled * this module should really be avoided * we have to repeat ourselves * libyuv is now available in newish distros * typo * split extra codecs into a new package * no longer used * move the systemd bits to xpra-server * split the man pages into the sub-packages * gstreamer codecs belong in codecs-extra * even the readme should be installed with xpra-common * the icons are in xpra-common now * the xpra meta package should be empty * xpra-x11 is not a hard dependency of the gtk3 client * add explicit dependency on gtk3 * unused import * #3802 pandoc is in the EPEL repos * #3802 split X11 bindings to a separate package * refresh patch context * move gui commands to client-gtk3 and silence all lintian warnings * ignore files generated by the debian build tools * fix extended-description-is-empty linter warning * simplify * ignore nvidia codecs, which have their own package * add missing notification screenshot, fix image paths * move screenshots to github * re-enable nvfbc * #3797 split debian packaging * oops: missed one more * missed from client gui path refactoring * f-stringify some more * move more gtk ui bits to xpra-client-gtk3 * let %pycached take care of __pycache__ * last one missed? * fix up refactored path to gobject client * libspng is actually called libspng0, because reasons * don\'t run tests on OracleLinux 8 * more useful validation message * #3457 build avif codec on newish distros * show which elements are missing * add oraclelinux and CentOS stream repo files * add repo files for RHEL clones * make sure the version of the codecs package matches * libspng is not in the bookworm repos yet * libavif is in the EPEL repos * we need to support libvpx 1.7 for RHEL 8 and clones * ignore xpra.egg-info * also use epel for those * remove ffmpeg-xpra and x264-xpra from build lists * this syntax avoids warnings * we can always start remote servers * #3797 split gtk3 client * split problematic codecs into xpra-codecs-extras * backing var had gone missing * #3376 no need for a full backtrace for file paths errors * add general env option to silence AT-SPI whining * log which backend we\'re loading * #3373 #3374 also add spng runtime dependency * preserve ssl command line options when launching client * minor fixes: missing import, clean each listener * #3376 expose quic sockets as udp via mdns * oops: missing import * more linter warnings, force GTK v3 * make it possible to skip \'sha1\' * avoid errors if \'md5\' has already been removed * more linter warnings, force GTK v3 * fix linter warnings, force GTK v3 * fix usage from the command line * import cleanups * #3376 add dedicated documentation page for QUIC * add sponsors info * no need for a summary here * Update System-Tray.md * #3789 they\'ve also changed the bindings name * #3789 yuk: two version numbers as part of the package name * #3789 hopefully one of these packages works * Update encoder.py * Remove stream-format=avc * #3706 restore longer initial timeout * add one more aac encoder option (untested) * #3706 add NV12 input colorspace option for vaapi * make it easier to choose which formats are enabled * #3793 workaround even more exotic version strings * server now correctly sends a fake challenge * turn off subsystems we don\'t need * try harder to get a valid window name to show * useless statement could actually cause errors * _NET_WM_NAME is in utf8 * update to new auth api and f-stringify * only validate the caps when a challenge is required * f-stringify * #3790 add \'require-challenge\' option for using the password in the command * send fake challenge whenever needed * f-stringify authentication logging * the encodings mixin may not be loaded * move profile function to a common location * simplify and move default profile * simplify * oops add missing options argument * #3706 make h264 encoding profile configurable * move method to a re-usable function * add link to the new graphs * dependency graphs * #3790 generic exec authentication module * cosmetic * #3776 only keep a single ui client when the session is unshared * connection-lost handler would error * #3373 / #3374 add spng for bookworm, sid and lunar * add note on using ctypes * we manage the buffer pointers ourselves * only negative values are errors * also enable codec check debug logging in verbose mode * make the list of encodings more easily configurable * make frame queue timeout configurable * this fixes crashes, apparently * Fri Mar 10 2023 scott.bradnickAATTsuse.com- Update to version 5.0+git20230310.df416a21: * can only build 2022.1 on EL8 * don\'t show a useless message * #3769 workaround GTK breakage * #3784 handle memoryview clipboard data * make it easier to override them all * import from the correct location * Mon Mar 06 2023 scott.bradnickAATTsuse.com- Update to version 5.0+git20230303.deed5680: * #3781 set default username_format via env var * fix focal beta component * no longer needed either * no longer needed * downgrade since there are too many build issues * Cython backwards compatibility: avoid \'noexcept\' * #3769 disable OpenGL on MacOS, again * #3778 \':\' is only needed if a password is also specified * simplify: XXH64_hash_t is actually uint64_t * make ScrollData optional * validate Cython extension before enabling \'scroll\' * missed from b7481ea7d2ec1717f3ac6cd41a82f65812df62b5 * #3774 UInputPointerDevice must accept the props argument * just remove $PYTHON and path to gtk-mac-bundler * with newer versions of clang, ignore unreachable-code-fallthrough * workaround new Cython 3.0.0b1 warning * fix Cython 3.0.0b1 warnings: default to C++11 * #3390 simplify evdi build * revert c3e17e3: prefer non-auto audio sinks * #3774 also fix calls in the verify method * #3774 match API change: removal of screen argument * #3769 re-enable OpenGL on MacOS * the bug has been \"fixed\" by downgrading libffi * make it possible to override build options * Cython 3.0.0b1 triggers -Wsign-compare warning on MS Windows * ffmpeg 6.0 compatibility: these enums have been removed * ffmpeg 6.0 * workaround new warning with Cython 3.0.0b1 on win32 * doh: apply patch for versions 0.x, add debug logging * auto apply cython patch before running the unittests * doh: older cython versions use 0.x numbers * workaround for older versions of cython * more correct exception values * Cython 3.0.0b1 compatibility fix * cython 3.0.0b1 * the jhbuild config goes into ~/.config * the python_provide macro should be placed after version attributes * add checksum verification step * fix bogus changelog date * add 3.1.x branch note * ignore missing attributes on autoaudiosink * move all non-auto sink attributes together * autoaudiosink does not have an \'async\' attribute * gstreamer needs this env var * gtk-mac-bundler wants an executable name here * don\'t use hardcoded paths * bootstrap is not part of \"configure\" step * must bootstrap before we can update * the custom config file path has moved * fix script download * oops: wrong version no * pynvml 11.515.84 * add missing changelogs * ffmpeg 5.1.2 * python3 pbr 5.11.1 * python3-lz4 4.3.2 * Cython 0.29.33 * nasm 2.16.01 * bump version * pygtk support was removed a long time ago * #3059 add missing prefix to env var names * #3706 macos packaging of gstreamer video encoder dependencies * vp9 fails mysteriously on MacOS, just skip it * postponing this codec * setDelegate_() is still causing crashes.. * we also need to silence cryptography on MacOS * some libraries must be installed via pip3 * #3769 disable OpenGL on MacOS for now * AppDelegate works with pyobjc 9.0.1 * current pyobjc crashes on \'setDelegate_\' * objc crashes if these objects are garbage collected * tell gtk-mac-bundler we don\'t want gtk2 * use the git version of gtk-mac-bundler * yet more breakage caused by setuptools * set `SSL_CERT_FILE` and use our own copy of `gtk-osx-setup.sh` * revert 613017eee596faf60565199de4439522b8bb5879 which broke the github CI * handle version generic requests * workaround more setuptools breakage * the scripts directory was removed a long time ago * #1598 try to enable nvfbc if needed * forgot to update some paths in fa3e6ed7a02c4a5e8aef95102431c423df25c689 * #3767 hide pointer overlay when we\'re moving it * add type hints and debug logging * #3767 send the latest pointer-position to all clients * cosmetic: f-string * simplify * #3592 use generic requests, remove legacy per-request flag * #3592 handle \'exit\' and \'stop\' generic requests * #3706 don\'t try vaapi on MS Windows and MacOS by default * don\'t try to load pulseaudio bits on MacOS or MS Windows * forgot to update MS Windows and MacOS shadow server API * #3601 no longer needed * try to make it clearer what is needed * also skip empty dummy names, remove debug * skip empty \'Canvas\' line * more readable repr string * #3744 cleanup will call stop * try to tidy up * no need for a dict, add memleak referer debugging * use filter(), better error messages, faster using set() * #3744 re-work the encoding filtering * show the gstreamer element in the encoder spec repr * #3744 add more debug logging * show the encoder element used * the class instantiation may fail * #3083 only source /etc/profile on Posix and not on MacOS * remove unused import * remove \'64-bit\' * #3706 do enable vaapi when no nvidia hardware is found * only enable an encoding if we have an encoder for it * better use of new ExitCode enum * distinguish network vs session connected state * fix missing \'host\' with ssh modes * #721 disable openh264 for now * should be able to copy errors and warnings * typo * fix 32-bit timestamp overflow giving negative values * only round dimensions * log the buggy dpi values * don\'t use nvjpeg as video fallback encoding * #1026 bump size limit * use hex for xid, but only during output * clarify that this is xpra\'s own tray menu * more compatct debug logging * allow more space for the new \'gstreamer\' codec name * give the real path to the script * log the message given * differentiate from plain \'jpeg\' encoder * only report scaling when used * prefer large screen updates for \'desktop\' content type * filter the window\'s rgb formats, not just all potential formats * rename method and simplify calculate_scaling * favour video more if we have a hardware encoder * remove warning level debug logging * all desktop / monitor windows have a title * we now allow negative coordinates * some desktops may use negative coordinates * #3750 freedesktop portal screencast support * avoid log warning if the notification is simply closed * move thread check to a utility method * keep track of the keymap change timer * split icon function * every call to init_context should have a matching clean * don\'t bother testing pipelines for elements we don\'t have * always release the write lock safely * choose shadow backend in platform code * ignore if we double free the write lock * #3750 stub screencast capture * default implementation should be callable * avoid errors when there is no keyboard config * all get_keycode methods must now return a group * fix MS Windows paths * prettify win32 display names * silence context messages - for now? * split cursor function * Always try to find headers from /usr/include, /usr/local/include on !WIN32 * sort the switches, must use \'globals\' to find them * #3539 add lunar, fix \'Components\' cut&paste blooper * #3750 win32 d3d11 and dx9 capture options * latest GStreamer combined the elements * silence linter warning * MSYS2\'s openssl3 disables legacy modes but python3-cryptography checks them * remove unused xid parameter, verify capture works before use * make gstreamer capture code more re-usable * python pbr 5.11.1 * pytools 2022.1.14 * new upstream snapshot * pynvml 11.515.84 * #3706 same default stride rounding as what gstreamer expects * #3747 a value means it exists * #3706 restride the image if required * #3754 refactoring: add utility buffer method * #3706 we can and should use a full mask for RGB input formats * #3573 try harder to find a valid menu prefix * #3706 can\'t use a factory for codec_class * #3539 add repository files so we can link to them reliably * #3749 also use \'desktop-fullscreen\' with shadow mode * clarify what \'autoconnect\' does * add quic to transport options * switch to IntEnum for exit codes * use a separate sub-command for single-window * don\'t try to setup ssh agent forwarding with shadow servers * add backtrace at debug level * #3749 mirror monitor layout when the client requests desktop-fullscreen * cosmetic * use legacy packet types until bugs are fixed * fix debug logging erro * Fix file name * Fix links * #3750 PoC GStreamer capture for X11 * log ImportError at debug level * avoid f-string formatting error * don\'t refresh the window models but continue to run the timer * fix logging formatting error * fix new-stream-sound on MS Windows * import cleanup * subprocesses take longer to start on MS Windows * move new-stream-sound to a dedicated method * paramiko can raise RuntimeException if it fails its self tests * also bump minimum version here * doh: typo * only bail out if we are certain * only bother trying to load drm on posix * oops: match DLL name * get sdk version early * don\'t use markdown backticks in shell scripts * tune vp9 so it doesn\'t timeout * #3703 add video elements to binary builds * #3703 add video elements to MacOS builds * f-stringify add vp9, skip ffmpeg element on win32 * remove unused def, fixup vp9, fix vaapi check * silence linter warning * #3709 ship \'removesilence\' element with binary builds * unused import * latest config files used for building * move platform + cuda dispatching code in one place * needed for building on MS Windows * prefer \'autoaudiosink\' on all platforms * we want \'win\' for MS Windows here * fixup 5903bdd4d4ffbf19189fbcd6b1cc7497f01c1aff * always use \'-Wno-error=address\' when compiling C++ on MS Windows * (new?) extra missing dependencies * #3703 working decoder (needs hooking up with cuda context) * better debug logging + silence linter warning * more loose matching * more correct debug message wording * always log full opengl backtrace at debug level * more readable output format * don\'t drop out of sequence numbers until properly fixed * don\'t assume nvidia hardware is present * skip comparing versions when empty * fixup 5a0b8f7cefce366b844108f220f5f10a2a641902 * add debug logging * silence warnings during initialization * ignore empty lines (ie: env var) * f-stringify * skip individual gstreamer encoders that fail self-tests * bump minimum requirements * validate image size in NV12 path * forgot to update path in full self test * allow multiple encoder pseudo-classes per encoder module * #3703 fix cpu / gpu cost if statement * add more plugins for testing the new gstreamer encoder / decoder * we need the python bindings * this test data works with all decoders * we know what you mean * safer YUV values * simplify: don\'t use \'global\' * try to figure out why this test fails on Ubuntu CI * use safer / bigger test sizes * clearer error messages * simplify and remove failed encodings * fail early if python-cryptography was not loaded properly * warn just once * better diagnostic messages * match the requested desktop size exactly * desktop model must call RandR directly * #3703 add (unused) parser code * add more test data * always memset the struct before use * oops: fixup test data format * add more codec test data * #3703 nvdec has a per-encoding minimum dimension * more thorough decoder tests: multi-frames and different resolutions * #3703 nvdec rounds up the height * stop using nvdec if we hit cuda download errors * #3703 fixed NV12-to-RGB shader usage * #3703 nvdec cuda to opengl NV12 * make it possible to force a specific pixel format * P10 formats also use more than one byte per pixel * reduce amount of debug logging * vaapi should be using the GPU * make it easier to override the codecs we enable by default * cosmetic * #3703 make code more generic * lower threshold for using hardware decoders * #3703 add NV12 to RGB via libyuv (unscaled for now) * #3703 use nvdec for jpeg (without opengl for now) * use autoprefix when discarding module names * fix linter warnings * add type hints * only YUV420 is subsampled vertically, YUV422 is not * we _do_ support \'jpega\' * warn if an invalid codec name is used * callbacks args can include pixel data (very large) * match refactoring: moved to cuda context module * simplify and make more robust * fix content-type environment variable parsing * #3703 add nvdec to registry * #3703 download NV12 data to a host buffer * include exception string * avoid pixel format naming confusion * some \'video\' decoders handle picture formats like \'jpeg\' and \'webp\' * make cuda image wrapper re-usable * #3703 add cuda error strings * #3703 use NV12 as output format * make \'enc_\', \'csc_\' and \'dec_\' prefixes optional * #3734 basic openh264 encoder * YUV422P does not subsample vertically, only YUV420P does * better formatting * #3738 show which Cython module is actually used * #3738 executable needs shebang * #3738 make it runnable for testing * #3738 also update clean and ignore list * Separate Cython extensions for libprocps/libproc2 * Fix dependencies for Debian stable * Update proc Cython extension to use public API * Update compilation settings for libproc2 * Update dependency on proc library * disable all ffmpeg / nvidia codecs with one switch * #3734 openh264 is only available in f37 * until we remove it, better have it installed * #3734 forgot to specify which rpm it does into * #3734 forgot to call Uninitialize - which frees the memory * #3734 add openh264 decoder * load all codecs before showing the list * add validation message * \'encoding\' packet handler had gone MIA * re-order imports * use ints for timers and add type annotations * nvenc can handle odd widths and heights * re-use the same default cuda context in nvjpeg and nvdec * handle None root window here too * also enable individual codec module debug logging with \'-v\' / \'--verbose\' * #3706 don\'t bother trying vaapi with nvidia by default * #3706 add rpm dependencies * more helpful error message * Added check for MSYSTEM_CARCH environment variable * add toggle for proxy encoder * need gcc to build * remove unnecessary f-string * re-order imports * oops: d7ce3926effe2c55085ae793734070c0ee57d2a7 already increases the frame counter * #3706 expose \'frame\' counter * fixup c48a1f9eb98cb8938bd04e0b560f75bfb2dace8a: update unit test * move utility functions * oops: had removed install step * remove rdf stuff and patch * new upstream release: 4.3.2 * patches no longer required * fail early if GStreamer is not found * don\'t run the tests by default * deal with missing menu items more gracefully * pyopengl 3.1.6 * maintain current version externally with a symlink * test all possible codec + chroma combinations * need a cuda context to use nvdec * use specific pkgconfig file for nvdec * #3376 can\'t use datagram without changes to packet reception code * group imports * #1942 convert button-action to the more generic packet format * #1942 turn \'packet-types\' into a feature request * once is enough * #1942 let the server tell the client about its packet-types * #1942 WIP conversion of pointer-position packets * remote-logging should not be used with \'quic\' debugging * ninth time\'s the charm: format-of-override-files says this is correct? * try once more to silence dumb debian linter * oops - wrong location * we get the libc6 dependency transitively * try harder to tell lintian that it is wrong, not us * #3493 packaging files had also been missed * avoid description-synopsis-starts-with-article linter warning * fix annoying and pointless python-package-missing-depends-on-python warning * hide tests that don\'t work on Wayland * better message * add debug switch * unused import * enable faster codecs in some corner cases * don\'t convert encodings to lowercase * add encoding help entry for \'jpega\' * use more consistent naming and probe the actual encoder / decoder module * prettify * #3722 avoid warnings with newer versions of GTK3 * never send focus events for OR windows * silence some minor linter warnings * #3719 start_server_subprocess assumes the options have the correct type * make debug make sense * #3714 xi2 needs an X11 context error checker * #3714 don\'t specify an encoding with binary IO * don\'t specify an empty display for remote start * add debug logging on function entry * make it clearer that the distro is at fault here * #3716 set both dpi coordinates * #3701 paramiko is the new default for most installations * python-pbr 5.11.0 * nasm 2.16 * pytools 2022.1.13 * ffmpeg 5.1.2 * pycuda 2022.2.2 * pycuda 2022.2.1 * #3651 dependency fixes * path fixups * #3709 switch to \'removesilence\' * safer and cheap to always audioconvert * #3706 add \'av1\' via gstreamer * #3706 decode h264 via gst + avcodec * #3706 we don\'t need videoconvert * #3706 gstreamer decoder * no longer needed * missed from 531bbab34c21944f2755721dcc3c914a724e21fb which meant to move it * #3706 use this encoder for vaapi * #3706 try to avoid copying pixels too many times * more readable diagnostics * don\'t log pipeline stop events for video * less confusing method name * #3706 faster: remove queue, tune for speed, add selftest * use the more standard spelling * can dismiss the splash screen with a key press * #3706 make it possible to choose the encoder plugin * remove redundant enc prefix * #3706 packaging for gstreamer encoder * #3706 PoC gstreamer encoder * the parser rejects zero size payload * never send empty buffers * only set CUDA_PATH when running from a frozen app * fixup c2e317ac0c6b1894434a611cbad033dfe2089871 * pycuda already appends \'bin\' to this path * #3651 Debian packaging is a pain * add \'HTTP\' proxy type * runner fix relative path to test file * log the dpi actually used: calculate it * #56 choose a higher default DPI for higher resolutions * #56 honour dpi when setting initial resolution * #3376 also avoid potential memoryview errors when using send_datagram * #3376 send some packet types using datagram instead of stream * unused import * #3376 only servers can use send_push_promise * someone tell pydev to stop adding random imports * #3703 prepare most API calls * forgot to update path to cups backend * silence warning * forgot to update this test for new write() signature * #3703 stub nvdec decoder * #3376 add quic to socket tests * aioquic would try to load (anf fail) using an empty filename * update test harness with new write() interface * #3376 use separate streams for audio and ping * \'legacy_frame_per_chunk\' has already been removed * remove unused var * fix nvidia codec availability check * #3695 use os.pathsep as path separator * Handle missing display number * Mon Jan 16 2023 Stefan Schubert - Migration of PAM settings to /usr/lib/pam.d. * Tue Nov 29 2022 scott.bradnickAATTsuse.com- Update to version v5.0+git20221127.3e61ef1c: * use the correct value for bits-per-pixel with alpha * prefer BGRA to RGBA * add scaling debug logging * f-stringify * fix avif encoder loading * output using the same colorspace used for encoding * missing fake attributes for opengl toolbox test * #3374 spng uses unpremultiplied alpha * preserve \':\' prefix for X11 displays * #3692 re-add display to ssh args * add debug logging * #3692 ssh config overrides url * fix minor pylint warnings * more helpful messages * fix minor pylint warnings * use premultiplied alpha with pillow * fix minor warnings * #3359 don\'t use odd heights for vertically subsampled formats * remove debug logging * support specifying the key file password * #3504 make it possible to bypass the check * minor warnings * #3504 nvjpeg decoder no longer leaks memory with latest drivers * silence minor pylint warnings * more helpful warning when there is no pixel data * fix memoryview TypeError on MS Windows with lz4 raw cursor data * try to continue without a cuda context * oops: another pass missed * find link.exe path with newer versions of VS * make sure to include cuda libs when needed * avoid pycuda import warnings on win32 * f-stringify * also need innosetup to generate EXE, MSIWrapper for MSI * handle more invalid x264 version strings * hint for spng * add missing import * fix compatibility with older versions of cryptography * fix minor warnings * more python deps, add verpatch link * #2743 don\'t enable local sockets by default on win32 * path missed during refactoring * silence pylint warning * try VS 2022 Community path * switch to cuda 11.8 * don\'t show \'64-bit\' which is the default * try to install more indirect dependencies * simplify: install for $MSYSTEM_ARCH * also install pyopengl-accelerate via MSYS2 * pycuda 2022.2 can be built on Fedora 37 * pycuda 2022.2 * #3690 uinput packages can be broken in new ways * #3376 expose quic config object * #3376 expose quic transport info in our connection\'s scope attribute * #3376 minor tweaks and expose more info * add quic link * add quic link * seamless is X11 only * try harder to get a meaningful connection error message * exceptions are re-thrown, no need to log them at \'error\' level here * f-stringify * better diagnostic messages when quic components are missing * failures to connect should not leave the splash screen hanging * remove unused arguments * f-stringify * better log messages * cosmetic * add spng * the key is not a secret * #3376 honour the request path part of the URL * #3376 add webtransport stub + refactoring * unused import * #3685 clamp clock values to \'unsigned long\' * cosmetic logging tweaks * #3376 uvloop is not available on win32 * #3376 cleanups and explicit IPv6 support * #3376 simplify: create the UDP socket ourselves * move uvloop recommendation to aioquic * support functions that return exceptions * #3376 install aioquic via pip for now * #3376 we no longer need wsproto * missed from ff04ad48e3ec7a894c091a27c5b7cdf0e9374fec * no more csc_ * modules matching without csc_cython * #3376 add working client connection * make websocket close packet into a reusable function * log and re-throw errors calling async functions * #3376 simplify * #3376 hook up the server connection * make it easier to re-use opcodes * avoid errors when cleaning up * cosmetic * #3376 remove dependency on wsproto * flush_then_close improvements * cosmetic * provide utility function for waiting for async calls * remove debug logging * use ellipsizer to reduce debug logging * #3376 make uvloop optional, always wait for main loop * missed from 562b1f184792643b6364832b7b4a9d4df93a53e5 * #3376 split handlers to separate files * cosmetic * use ValueError for validation * cython mask module should be safe to import globally * clarify test failures * oops: missing delayed imports * older versions of python-cryptography require the backend argument * prevent circular import * prevent circular import * missed from refactoring of header module in 3b68b9f34679b38d8b7f35a541c694af64f7a10d * check for main loop after waiting * move xpra\'s protocol modules to a subdir * all modules need an __init__ file * test code does not belong in releases * only one backend is supported: python-cryptography * remove unused constant, expose non-backend info * oops: match refactoring in b2d0b2fb5e87bcae631a32a80b2d261e7b07d130 * adjust tests for 1492a2210504d9c3428f0e73428220e6df838d5e * move lz4 to a subdir * move qrencode to a subdir * move vsock to a subdir * forgot to remove the old file in b2d0b2fb5e87bcae631a32a80b2d261e7b07d130 * split paramiko and exec client code * move ssh bits to sub-directory * #3376 split directory listing, simplify calling async code * d3des is only used with rfb, move it there * #3376 oops: modules needs init file * normalize ssh args function arguments * use isinstance() rather than type() * remove debug logging * #3376 stub client quic connection * #3376 logging tweaks and fixes * #3376 for now, use wsproto * #3679 we may get memoryviews from compressors * strip header from more languages * prevent false positives with memoryview * #3682 no idea why this fails in github actions * #3642 fixed child_command_test in 256c7a7d5bf55ba31926eed8b62487989bd9b30f * fix all pylint warnings * fix all pylint warnings * f-stringify * we don\'t need the csc cython on RPM platforms * #3669 document splash=yes|no|auto * fix ssh parsing: need to switch to using dicts * test fixes and tweaks * #3642 less intrusive fix * #3667 minor test fixes * #3667 remove tons of dependencies we don\'t need * update dependencies for v4.4+ * #3667 yasm is not needed * oops: don\'t normalize all display names to \'named-pipe\' * add GHA build/test * teach run.py about --skip- * * #3675 also skip spurious \'Control_L\' events when releasing the AltGr key * video_colorspace_test skip encodings unsupported by encoder * #3376 hook a basic http3 server * f-stringify * #3359 don\'t care about mpeg1 / mpeg2 * better error message * #3359 make it easier to test a specific encoder * #3359 sample images for testing * constify memory alignment * #3359 x264 can handle odd widths with non-subsampled input * #3359 correctly parse the resulting pixel data * use strongly type accessors * better error messages * #3359 a codec can reject invalid input sizes * #3359 x264 can crash if given odd dimensions with subsampled input * add option to save compressed samples * #3359 add test case for video dimension masks * f-stringify and cleanup * fixup bd22fb3165a856fd7660c99ba63c9cb9f8be2af2 (\'p\' undefined) * fix minor lint warnings * don\'t show \'Upgrade\' in splash title * f-stringify * guard against stdin / stderr goin MIA * #2174 include useful bug tracker link * doh: protocols don\'t include the separator * fix minor pylint warnings * #3599 ugly parse_host_string() function was now unused * fix minor pylint warnings * \'join\' is what we have to use to wait for threads * unused import * fix minor pylint warnings * continue to support CentOS 8.x and clones * unused import * #3376 aioquic needs the openssl headers * #3376 missed the actual files in ff7d58e7deea6d79e4166dece97d47f47f5410c1 * #3667 older versions of Pillow insist on a full palette * #3667 show full encoder parameters when failing * #3376 rpm packages for aioquic and pylsqpack * Update RPM.md * fix minor warnings * this is where docs really belong.. * revert most of 23a0555bc94f530b78b7673526846099d60f0d6d * revert 23a0555bc94f530b78b7673526846099d60f0d6d * move docs to fs/ * #3670 fix ssh desktop start with older servers * #3592 match all related subcommands * #3668 update bug tracker link to use github * Raise clarity: xpra install on server&client * #3667 fix error handling * Raise clarity: xpra install on server&client * Update README.md * Raise clarity that xpra install on server&client * #3662 values from the URL take precedence * #3664 symlink creation errors don\'t need a backtrace * bump year * 3664 send the full version when requested * #3471 support expanding chdir option * #3659 use dataclasses improve the code * simplify: lookup packet_type just once * round sizes up, so we never get \'0KB\' * fix warnings on Ubuntu 20.04 * #3599 rename \'unix-domain\' to \'socket\' * #3647 disable bandwidth-detection by default * #3599 move more ssh parsing to a separate function * fixup 18720c1f1d9fcade877c6174c7ef65d6580471ea * fixup 18720c1f1d9fcade877c6174c7ef65d6580471ea * #3647 don\'t blacklist any Intel cards * #3599 don\'t override main attributes with query string values * #3651 client should almost be required * #3514 env vars must be strings * #3599 use urllib.parse rather than custom code * Tue Oct 18 2022 scott.bradnickAATTsuse.com- Update to version 5.0+git20221018.223dc02f: * move nvidia codecs to \'Suggests\' * #3651 use dh_movefiles to split the modules into separate packages * fix logging of decompressed messages * revert 0d37df6807729c865cd216f3b4d5eeba2e8f6817 * server last info may have more data * f-stringify * remote logging of f-strings * #3582 expose gstreamer version info when FULL_INFO=1 * #3582 these lib versions are no longer exposed by default * #3651 we have to use dh_shlibdeps * minor warnings * oops: undo parts of 6fc032eda4ae23917ed770c3d6f1249b3efafa55 * fix chunked file uploads * make it possible to force chunking * ensure we don\'t try to process empty files * f-stringify * warn if we ever somehow get the wrong arguments here * this is a text file * only update one file * fix conf files not updated on Posix OSes * return change boolean just like the superclass * return change boolean just like the superclass * simplify: let update_focus() return the boolean * #3654 disable mixins we don\'t need * #3649 block the import of pycuda on WSL * #3651 split nvidia codecs into their own package * #3651 split packaging for DEBs * replace assert with explicit check * no need to raise an exception * Allow --max-size and --min-size to work again * the symlink is now in git * make it easier to build debian packages of xpra * #3651 move all cuda files to xpra-codecs-nvidia * #3652 add explicit conflict * #3651 split nvidia codecs into a separate package * #3590 avoid video for small sizes * f-stringify * #3514 disable GTK HiDPI by default * explicitly disable all codecs that use CUDA * #3648 ignore alpha if client can\'t handle it * forgot to update some codec references during refactoring * minor warnings * oops: fixup 105669b79fb522451f094dd2133be548ccd24966 * oops: forgot to update paths here * #3582 the filters never change * #3582 limit default network and sys info * simplify * replace \'asserts\' with faster \'RuntimeException\'s * remove unused var * disable transparency early via env var * #3646 filter out rgb formats with alpha * better debug logging * make it easier to run the examples * make pillow optional in more places * the proxy can be used for other modes * more minor warnings * minor warnings * fix minor warnings * use shorter method * fix minor warnings * fix more warnings * oops: forgot to update paths in tests * doh: typo * avoid errors when running without pillow installed * fix minor warnings * f-stringify + avoid more warnings * fix minor warnings * f-stringify and simplify * add link to #3633 * forgot to bump the version here * try to ease upgrades from previous versions * derp * remove scary warning when pillow is missing * pillow, cryptography and xrdb are not strictly required * I have newer headers installed... * we don\'t have usable evdi libs on Fedora * make pillow optional again * less scary message when we can\'t load webcam components * make python pillow optional again * missed from move in fa3e6ed7a02c4a5e8aef95102431c423df25c689 * fix minor warnings and f-stringify * fix building with clang * all supported distros have tmpfiles.d, including el9 * #3592 simplify * less scary message when v4l2loopback is not installed * #3592 warn that these options are deprecated * #3592 warn if not building for 64-bits * #3592 re-arrange codecs * minor lint warnings * #3592 move nv_util with the other nvidia bits * minor lint warnings * #3592 split codecs into their own package * #3592 remove python3 package name prefix * #3592 libfakeXinerama is being deprecated * #3592 remove support for coexisting with python2 RPMs * #3390 forgot to include the compat file in sdist * these files no longer exist or have moved * cosmetic * #3636 also convert to bytes here * #3636 lz4 memoryview data must be converted to bytes * cosmetic * #3641 enable agent forwarding by default * #2303 also remove invalid non-symlink * simplify and update docstring * #2303 stash env option in display args * #2303 preserve the actual display * unused import * #3592 stub vpl encoder * #3592 simplify: just require 64-bit * unused import * fix minor warnings * remove unused def * #3592 bump minimum version requirement * #3592 remove support for older versions of libvpx * #3592 simplify: require libvpx 1.8 * simplify * undo WIP from c86d1aaeadadd6c403997d218552e77a9a45ea5e * #3637 update Xdummy documentation links * remove redundant string prefix * f-stringify * don\'t log huge invalid packets, ellipsize them * Fix test_root_window_model by formatting geometry string correctly * Fix test_get_version_info when the revision is 0 * Sat Oct 01 2022 scott.bradnickAATTsuse.com- Update to version 4.4+git20221002.1c1e6e0d: * bump version * add rocky / alma / oracle / centos stream * add latest fix * #3454 too easy to hit resizing loops with xterm * show variants if we find any * #3630 don\'t populate the full layout list if we don\'t have to * f-stringify * #3630 add test that causes wayland hang * can only join strings * #3630 make it easier to disable all \'after-handshake\' calls * fix missing systray on Ubuntu * the nvjpeg flag has been split in 2 * build witout cuda on Fedora 37 * add an empty changelog * #3628 try harder to find the \'interactive\' version * silence some minor warnings * chop large opengl renderer strings when displaying them in UI * #3628 fix support for cygwin ssh servers * remove warning on MS Windows and MacOS * update the release notes * #3628 cygwin probably behaves like msys * some opengl renderer strings can be very long * refactor: split authandler * simplify: don\'t copy options we don\'t reuse * match any variation of \'gnome\' DE * #3628 oops, emulate the output format too * typo * #3628 match registry query as a plain string * #3628 re-arrange workaround order * #3626 we can query without cmd.exe scripting * add some new definitions * #3628 use paexec to get an interactive desktop * silence warning * silence warnings: access \'daemon\' directly * #3626 try harder to locate xpra on MSYS2 * #3626 honour more virtual commands execution on MS Windows * fix for loading \'DSS\' keys, aka \'dsa\' files * doh: check we found the keyclass * #3626 correctly handle channel exec requests * add funding link * replace chan_send with sendall variants * missed brotli compressor from clean list * never try to use systemd-run on MacOS * cosmetic * also clean the uuid * add utility for dumping xpra\'s x11 properties * delete the mode property on exit * cosmetic * doh: cut&paste gone wrong * refactor authorized keys parsing into a reusable function * refactor and keep the first match * simplify * fix warnings * refactoring + try to honour \'echo\' * cosmetic * #3625 downgrade to a warning * cosmetic * some exceptions have no message * fix \'_proxy\' mode: don\'t start a server * verify we have a stdout array before accessing it * cosmetic * avoid errors with ssh sockets * #3626 don\'t use \'command\' command on MS Windows * handle all \'_proxy_ *\' subcommands generically * \'command\' can be used without any arguments * f-stringify some more * don\'t show the full backtrace at \'error\' log level * missing alias lookup * f-stringify some more * skip attempting to load codecs that aren\'t available * f-stringify * f-stringify and use mode aliases earlier * also skip \'importlib._bootstrap\' as a debug category * use a more reliable timestamp server * unused import * add full backtrace at debug level * bail out if no GPU found * no visible logging during self-tests * #3625 skip showing scary warnings * f-stringify + fix warnings * add nvfbc to diagnostics * oops: missing exception variable caused an error * cosmetic * dependency is missing on Debian Bookworm * the debian headers are too old * the pkgconfig file takes care of the [lib]drm path * remove unused framework * pynvml 11.515.75 * ffmpeg 5.1.1 * update faac / faad url to maintained github fork * better libvpx url * 4.4 updates * #3625 add early check for nvidia driver * catch permission errors and report them * #3625 more consistent failure messages with missing hardware * use the correct loggers * keep the \'owned\' flag updated * unused import * oops: no more hex * #3504 don\'t build the nvjpeg decoder by default * simplify * we must use print here * initialize variable so we can handle failures * remove support for gcc versions older than 6 * f-stringify and fix warnings * f-stringify and fix warnings * fix legacy packet encoders * f-stringify * #3390 PoC expand server * don\'t use GLib directly * don\'t use GLib directly * #3473 also clamp pre-mapped windows * f-stringify * also makes the code less dense? * more generic solution for missing menu items * the qr menu may be missing * no wayland here.. * when failing to parse, return \'auto\' value * simplify validation * xsettings watcher may be None * f-stringify and fix warnings * shortcut out, avoids backtrace splatter * type annotation was wrong * free wrapper explicitly to avoid warnings * #3390 add drm as a pseudo codec * Fedora 37 needs an updated Cython * #3390 the cursor fix is in 1.9.1 * #3390 add compatibility glue for older cursor function * #3390 add compatibility glue for older versions * Cython 3.0 alpha: use pre-release to support python 3.11 * #3622 handle config file parsing errors more gracefully * #3390 dumb double buffering * round seconds * f-stringify * late_start() should only run once * log real errors, ignore missing PIL * #3390 oops: forgot to add drm module * don\'t import logger if we don\'t need it * skip scary permission warning for socket dirs in XDG_RUNTIME_DIR * f-stringify * split method * cosmetic * f-stringify * fix logging call * win32 DotXpra only uses \'username\' * disable clipboard proxies until we have a peer for them * better window info * silence pylint warning * minor warnings * pycuda depends on numpy * restore missing numpy import * typo + add reset_logging() * constify and cleanup * save as jpeg, bail out sooner * use ValueError * cleanup and remove python2 support (simplify) * f-stringify * #3619 better exception message for payload size errors * #3619 don\'t compress strings * #3390 cleanup and f-stringify * oops, fixup missing import from 3c02e27631d982f0540aac9be0d87272529c74d6 * raise min version * f-stringify and minor warnings * validate screen dimensions, round if necessary * #3483 move most of the locking to cuda_context import * better server / session type string (we don\'t use gtk2) * try to normalize mode names better * #3390 move finding devices to a reusable function * cleanup and f-stringify * delay bindings imports until actually needed * f-stringify * #3390 make save-to-file optional (too slow) * validate platform earlier, remove duplicated check * #3390 typo: check for \'libdrm\' * #3390 add kernel module loading helper * #3390 move drm to its own module * f-stringify and fix pylint warnings * #3390 expose drm info when FULL_INFO>1 * silence pylint warning * #3390 cleanup and f-stringify * #3390 build dependency updates * #3458 we have ffmpeg builds now * #3390 add drm query tool * #3390 update to latest API * #3390 no need for info logging, we can use \'evdi\' for debugging * f-stringify * #3616 add \'autoconnect\' checkbox to dialog * better error format * typo * pylint warnings * f-stringify, fix minor warnings * f-stringify and pylint warnings * f-stringify and pylint warnings * f-stringify * f-stringify, fix minor warnings * use our pkgconfig file as template * don\'t use print() * assume that the user wants to abort authentication * fix pylint warnings * whitespace cleanup * update tests to use \'wants\' array * fix minor warnings, avoid print() * avoid naked print() in reusable / exported functions * #3610 use the last line of output * #3610 detect which \'find\' command to use * f-stringify and remove print() * #3524 support remote ssh start * oops: typo * linter warning * f-stringify * #3592 move towards generic feature requests * also update default file config * automatically enable sync-xvfb when using Xephyr or Xnest * f-stringify * f-stringify * also remove session tmp dir * f-strings and warnings * #3002 bail out if the user cancels pinentry * we can\'t call quit() directly from the authentication thread * prettify * f-strings * typo * f-strings * f-strings * #3478 tool for extracting atom names from values * open() warnings and f-strings * silence import warning * ensure tests don\'t use prompts * re-enable * simplify * remove unused argument * #3610 wait for a valid header on ssh connections * more cleanups, warning fixes, f-strings * fix more minor warnings * fix minor linter warnings * server time is better than using CurrentTime * use f-string * revert fb6621eaf922466a4210f2d03a973893e4bfa74c * re-use the superclass method * we don\'t have \'long\'s any more * bug: timestamp clamping should not shortcut out * log all the event data * simplify some more * simplify, a bit * update the release notes * preserve URL arguments in http request path * cosmetic: make code more readable * mostly cosmetic refactoring * fix error path (\'reason\' was undefined) * unused import * #3604 separate logging from gen-dir * don\'t use temporary variable with reserved name * OR windows don\'t have \'client-geometry\' * f-strings * f-strings and fix lint warnings * convert to spaces * f-strings * need ssl attributes to parse * honour env to skip coverage * #3601 the lz4 compat header file must be included explicitly * we now support 1.8 or later * #3601 workaround for older versions of lz4 * #3601 unit test * remove print debug statement * #3560 also update the client unit test * we have to query the keymap to get properties * typo * oops: missing import * remove unused import, add debug logging * remove unused arg * simplify: raise_xerrors=False is the default * unused import * silence lint warnings * when testing, disable lost-focus-exit behaviour * silence linter warnings * oops, that was for testing only * move x11 tests where they belong * #3582 honour FULL_INFO in get_host_info * pid is no longer included in host info * proxy attributes are now regular display attributes * silence some minor lint warnings * #3560 forgot to update unit test * #1796 make the \'all\' list of challenge handlers configurable * vfb bits require the \'display\' feature * remove unused imports * avoid None values * avoid more None values * bencode doesn\'t like None values * add missing indentation * build more codecs * skip test if numpy is missing * tests may not initialize all attributes * vfb bits require the \'display\' feature * try to make it clearer this should not be used * skip the dbus test if python-dbus is not installed * also honour the PYTHON env var when launching subprocesses * typo * fix deprecation warning * don\'t use \'which\' on absolute paths * cosmetic * make it possible to test with multiple interpreters in parallel * cosmetic * we can\'t import the enums directly * skip dbus test if python-dbus is not installed * also honour the interpreter here * fix uninitialized warning with latest Cython * #3373 enable libspng * doh: use the same interpreter for running the tests * make it easier to run with a different interpreter * distinguish connection errors from authentication failures * cosmetic * cosmetic * avoid deprecation warnings * oops: also remove import * refresh delay is no more (#3560) * silence warnings with newer versions of Pillow * #3486 never use print() directly from modules * better error diagnostics * return strings, not bytes * simplify * avoid errors when python-xdg is not installed * downgrade missing paramiko to a warning * catch missing python-dbus earlier * missing python-dbus is just a warning * error handling for menu loading * #3601 updated deps * #3572 we only need the lib * #3601 deb dependencies * #3100 cleanup the authentication handler interface * #3100 exit more quickly if the http connection requires authentication * #3100 make challenge handlers more re-usable * don\'t add the same digest value multiple times * cosmetic * #3100 make authentication method re-usable * #3100 \'Basic\' http authentication handler * cuda context locking contention should be a transient problem * the html5 client wants to know the frame type * #3598 expose \'low\' \'scaling-quality\' for nvenc and nvjpeg * avoid weird closure errors * f-strings * #3607 newer clients don\'t want flattened caps * easier to read * unused import * Tue Aug 23 2022 scott.bradnickAATTsuse.com- Update to version 4.4+git20220823.6f83fe78f: * #3607 newer clients don\'t want flattened caps * easier to read * unused import * os.path.abspath always returns a path * MacOS doesn\'t have an XDG_RUNTIME_DIR * show what type of client disconnected * #3059 X11 pointer grabs * #3059 pointer grabs for win32 using ClipCursor * fix desktop servers * silence linter warnings * #3504 use async calls using a cuda stream * #3582 more fine grained filtering * re-use value from common * move icon functions to a more re-usable location * simplify * cosmetic * oops: 10 seconds is slow * #508 workaround win32 focus events * #508 also show progress of downloads * #508 use the Taskbar to show splash screen progress * remove unused \'display\' argument * #1526 get dpi from comtypes * #3504 move nvjpeg code to a separate method * #3589 reset fraction and text and re-generating progressbar widget * try harder to prevent dangling timers * #3589 re-generate new buttons * add debug logging * remove unused \'tooltip\' argument * better formatting * wrong positional arg * fix digest errors with unchunked file transfers * better formatting and f-strings * avoid errors deleting the temporary file * fixup version number conversion * drop meaningless \'python-XX\' version * import errors can be handled generically * #3601 remove python-lz4 fallback * #3601 remove python-lz4 package dependency * #3601 don\'t require python-lz4 anymore * #3601 prefer our own lz4 cython module * remove debug * #3601 handle memoryviews * #3601 handle memoryviews natively * remove unused imports * #3582 don\'t assume 32-bit * silence some warnings * fixup c420dc9170ff08c2d3f3a602114ab0af82e09b8d * #3504 show pycuda context cleanup failures * x11 bindings return bytes * just one repeated typo * #2105 bundle libproxy.py (missed from 82b0698e55f591173a5afbd3df6048de60a4d987) * update embedded xxHash lib * #3592 use namespace for audio caps * skip empty values * #3592 move clipboard caps to a prefix * Mon Aug 22 2022 scott.bradnickAATTsuse.com- Update to version 4.4+git20220807.c52d8ac10: * new git snapshot * .. and here * we can use the same list for \'8\' and \'9\' * oops: forgot to bump version * doh: wrong line * ffmpeg 5.1 deprecated \'channels\' * use newer commit * pytools 2022.1.12 * pbr 5.9.0 * ffmpeg 5.1 * python-lz4 4.0.2 + fix macro warning * with \'epel-next-release\' installed, this is not needed * bump date * match layout update * #3600 try to build python3-lz4 for RHEL 9 * #2105 detect proxy settings using libproxy * Sun Aug 21 2022 scott.bradnickAATTsuse.com- Update to version 4.4+git20220801.cc03f573e: * obvious is obvious * simplify: cuda-device-context is a video encoder option * don\'t increase the quality artifically * don\'t special case video * remove \'text\' special cases * #3420 add control commands for \'max\' options * honour refresh attributes * #3420 honour max-quality in more places * #2105 bundle pysocks with MS Windows and MacOS binaries * #3572 brotli option toggles the module * 2105 install pysocks on MS Windows build machines * #2105 connections via proxies using pysocks * Cython 0.29.32 * Cython 0.29.31 * revert 4425c08d72e08d4d2f0fe487cdc5f03e99ba8c88 which causes crashes * #2779 shortcut for showing the documentation * #2779 try harder to find a valid documentation path * don\'t install the manual in a subdirectory * #2779 add a shortcut for showing all the shortcuts * warn about uinput * Wed Aug 10 2022 Scott Bradnick - Making adjustments as per https://build.opensuse.org/request/show/994288 * Swapping out \'--without-strict\' * Using CFLAGS \'-Wno-error=deprecated-declarations\' for all flavors * Adding \'ExcludeArch: %ix86\' * Sun Aug 07 2022 Scott Bradnick - Making adjustments for \'ffmpeg-4\' vs. \'ffmpeg-5\' * Sat Aug 06 2022 Scott Bradnick - %{_libexecdir} issue was fixed upstream, cleaning up spec file * See https://github.com/Xpra-org/xpra/issues/3597 * Wed Jul 27 2022 scott.bradnickAATTsuse.com- Update to version 4.4+git20220726.a03b3f67e: * #3597 openSUSE Leap 15.4 still does not use libexec * always pop GDK errors * #3595 add man page entry * #3595 \'exit-with-windows\' option * fix removing monitor: logging was causing an error * layout may be \'None\' * close the splash screen if it loses top level focus * #2630 these values aren\'t \'real\' layout names, don\'t try to use them * #2630 modify shadow keymap when \'--keyboard-layout=auto\' * `xpra/x11/server_keyboard_config.py`: `\'NoneType\' object is not iterable` * #3594 fix vim typo * #3594 backwards compatibility fix * f-strings and more dense output * safer: don\'t delete recursively, delete with glob explicitly * when calling \'xpra clean\' explicitly, we can remove session sub-directories * run \'late_cleanup\' before trying to remove the session dir * don\'t try to parse \'resize-display\' as a resolution if it is a boolean * remove spurious import added by IDE * distinguish directories from regular files * it is possible to run without the \'rgb\' encoder * make it easier to build without any codecs * we can only use the \'native\' mapping with existing x11 keycodes * simplify: remove unused argument * #3592 remove redundant \'xkbmap_\' prefix * #3592 remove unstructured setxkbmap query data from server * #35822 start removing \'setxkbmap -query\' and \'setxkbmap -print\' * #3582 audio info may be missing - and that\'s fine * don\'t pretend that these versions should work * more resilient version parsing * #3592 remove xkbmap prefix from client * #3582 audio info may be missing - and that\'s fine * #3592 same as f192c0312bc98360aec94e6aa92af90511259401 but for the server * #3592 move keymap to a substructure * #2303 support agent forwarding with the builtin ssh server * cosmetic * #2303 ignore \'_proxy\' command line arguments * cosmetic * #2303 when client exits, find another auth socket * unused import * #2303 keep track of sock path * #2303 make function more re-usable * dead symlinks don\'t \"exist\" * #3592 remove unused tcp-proxy feature * typo - why didn\'t this trigger problems? * the \'install\' subcommand does add data files * #2303 error handling * return the exit code * #3592 remove uncompressed \'premult_argb32\' icon format * #3592 never use zlib for pixel data * unused import * Tue Jul 26 2022 Scott Bradnick - A few changes related to local builds of Leap 15.4 referencing 150500 * Fri Jul 22 2022 scott.bradnickAATTsuse.com- Update to version 4.4+git20220721.c00134211: * place the verification token at a random address * remove ancient mmap token location code * #3582 limit audio info * always enable bundling - no need for env switch * the \'_proxy\' subcommand doesn\'t need to load compressors * skip lib validation warnings when running \'sdist\' * #3582 limit client info exposed * doh: return the info * return a dict even when we hit an error * #3591 clamp negative values to display * #3591 also drop negative dimensions * #2303 honour env var and skip processing ssh agent paths * some clients don\'t have ssh-auth-sock specified.. don\'t error out * silence linter * only forward ssl socket options to the ssl wrap function * fix ssl breakage: convert attribute names to arguments * Fri Jul 22 2022 scott.bradnickAATTsuse.com- Update to version 4.4+git20220720.22e3ae211: * don\'t compress rgb pixels with anything but lz4 * rename method to prevent confusion * #2303 ssh agent forwarding * #3582 hide detailed version info * Wed Jul 20 2022 scott.bradnickAATTsuse.com- Update to version 4.4+git20220720.d0ae240e2: * #3582 skip opengl info * fixup estr logging method * #2303 make is_socket re-usable * #3483 pycuda also imports numpy * #3579 more f-strings * oops: missing import * #3582 mixins info, option to log capabilities * Tue Jul 19 2022 scott.bradnickAATTsuse.com- Update to version 4.4+git20220719.d301bf723: * #3582 restrict client info exposed * the system tray forwarding is challenging * we are forced to use appindicator now * simplify * #3577 simplify * #3577 reorder * #3577 remove v4l2 legacy workarounds * typo * too many distros are missing pam pkgconfig files * not all Linux distros have this header file * another strangely misnamed package: libpam0g\' * fix misnamed package dependencies * RHEL doesn\'t have a pam-devel package? * distros have all moved pam to /usr/include/security/pam * * Mon Jul 18 2022 scott.bradnickAATTsuse.com- Update to version 4.4+git20220718.6b84ef9f6: * skip all guessing using an env var * #3386 fix typo * procps-devel is not available on RHEL? * pam pkgconfig refs had gone missing * refer to Cython \'Extension\' class directly * oops: nvenc is not a package * make it easier to change the number of cores used * ignore \'address\' warnings building nvenc * use booleans for switches * no longer used * try the local cuda symlink before anything else * this doesn\'t do anything * make it easier to choose the number of threads * #3577 remove legacy workarounds * #3577 add switch for \'argb\' codec * #3577 group subsystems together * #3577 group macos / win32 bundling workarounds together * #3577 nvenc must use pkgconfig * #3577 enable \'-DDEBUG\' globally * #3577 convert pam module in pkg-config * CUDA symlink on MS Windows: * #3577 move nvenc tweaks to pkgconfig file * ignore temporary build generated installer file * #3390 evdi uses c++ * #3577 use pkgconfig file for nvfbc flags * #3577 simplify nvenc / nvjpeg using pkgconfig files on win32 * #3584 typo * fixup bccf36d62f6857094054cb3bd5cefd70b1fd5423: directories must start with a \'/\' * #2753 RPM file list update * #2753 add new packaging dependency * #3582 limit the info available to remote hosts * convert tray menu to use the new qrencode module * #56 fix miscalculation of initial refresh rate * #3583 update to the new python-cryptography API * #3579 (almost) finish this one module * #3483 only import numpy once, block if necessary * Tue Jun 21 2022 scott.bradnickAATTsuse.com- Update to version 4.4+git20220621.872c7f8d8: * #3559 set non zero global quality with vaapi * #2400 more indirect dependencies * add example pkgconfig files * #3543 make it easier to disable inotify watcher * move away from slow zlib compression * #3556 don\'t enable hevc by default * report codec information using strings * add docstring * add missing codecs to clean list * #3457 add missing toggle for avif * #3553 extra args for vfb command * Update randr_bindings.pyx * Allow override of idealVSync by env. vars * Fedora 36 build fix: use a more crude glob * doh, typo * #3458 disable LTO on Fedora 36 * new upstream release: 11.515.48 * show builds from \'git master\' as \'beta\' builds * utility function to hide platform import ugliness * better error message formating * #3552 only initialize X11 gdk display source on X11.. * #56 this function must return an int * #56 we may have already added this mode * #56 don\'t bother with xinerama workaround when we have randr16 * better wording * oops: was meant to specify the list values * fix more warnings * silence some minor warnings * make code more readable * error message would itself cause an error * fix chunk number verification * cosmetic * Tue May 31 2022 scott.bradnickAATTsuse.com- Update to version 4.4+git20220531.56f76c715: * fix new warnings generated by latest Cython / gcc on win32 * also avoid deprecation warnings on win32 * Update OpenGL.md * Wed May 25 2022 scott.bradnickAATTsuse.com- Update to version 4.4+git20220523.d5a721cc4: * fix webcam forwarding with older versions * Most build systems respect the CPP env var instead of just calling cpp * Sat May 21 2022 scott.bradnickAATTsuse.com- Update to version 4.4+git20220521.cb25967f8: * #3545 opensuse does patch distutils * Fri May 20 2022 scott.bradnickAATTsuse.com- Update to version 4.4+git20220519.9be098cc7: * #3371 set the server socket even if we don\'t forward xdg-open * we need a frame ancestor to use StreamSaver.js * Cython 0.29.30 * trays don\'t have a \'client-geometry\' to adjust * if we fail the checksum, delete the file * refactor hash checking functions * detect AlmaLinux and Rocky-Linux * make code more readable? * almalinux list of packages is the same as centos * minor fixes * update to use cuda 11.7 path * #3537 forward port d0d2bae8ad825685a9301855924f3468ae39767d * fix debug logging triggering warnings * better warning message: include the key * #3537 remove DesktopManager and DesktopState * #3537 remove overcomplicated ownership-election * #3537 clamp window models to the new screen size * more understandable message * simplify: size can be passed in, no need for a callback here * back off more gradually * the \'title\' lives in the model * #3390 stub evdi capture codec * try harder to distinguish connection failures vs lost connections * only do the context check if we actually access X11 functions * log failures to cleanup contents handle * use the correct short names * these are the correct short names apparently * try harder to show a useful hostinfo * #3530 always use the free_image_wrapper method to ensure we safely access X11 using the context manager * prevent name conflict between errno value and enum * make it possible to call clean multiple times without causing errors * #3535 only unescape what we use, URL handlers can handle it raw * #3486 more thorough testing of json input * #3486 indent error details * #3486 can\'t catch an error we can\'t import * fixup c5f7c8804a87eb725e699045800b00322a4633e1: add to the correct prefix * #3486 add MSYS2 dependency * #3486 add suggested dependencies * #3486 fix keycloak auth module thanks to unit tests * #3535 unescape URLs * force rebuild * some distros choke on zstd * Thu Apr 28 2022 scott.bradnickAATTsuse.com- Update to version 4.4+git20220428.94954180d: * #3533 newer versions of Firefox use smaller max-size * make socket info more resilient * only query ioctl if we have a valid file descriptor * move command lookup by pid to window model * #3530 don\'t send pixels for windows that don\'t overlap the screen * #3530 add \'unityhub\' as browser content type * #3514 fix launch error on systems without X11 * fix tabulation * log failures to undock systrays * #3530 crop the damage area if the window is now smaller * add the v4l2 source to the codec loader tool * #3371 guess the session if the environment has it * parse when called, don\'t return a generator * #3384 pass shadow geometry options to remote server * fix generic subcommand substitution * file should have been removed as part of 0b23cc0e59fd55047e5e73df7a4d39439584fb2d * make the code easier to parse using context managers * log the previous dimensions * use xsync context manager * #3530 use a UI context manager for freeing X11 images * don\'t use xsync context manager on MacOS * import X11 error handlers from the correct place * #3530 cleaning up the xshm handle may raise X11 errors * #3530 add more context checks * #3530 call context check when XShm resources are freed * lintian hangs on aarch64, skip it * #3524 don\'t modify the monitors when the client connects * remove debug logging * #3524 make monitor windows fullscreen when desktop-fullscreen is set * #3524 remove functions identical in base class * #3524 doh: modify the monitor we\'re setting properties on * #3524 better debug logging * #3524 refresh all monitors on layout changes * #3524 add \'monitor\' subcommand * #3524 reconfigure monitor models on external resize event * #3524 add stub for handling monitor resizing via xrandr * add missing context check, XRRSelectInput wrapper * #3486 style fixups * Refactoring for PR * Refactoring for PR * #3524 fixups, cleanups, etc * cast is not necessary here * Refactoring for PR * Added keycloak authentication * Tue Apr 19 2022 scott.bradnickAATTsuse.com- Update to version 4.4+git20220419.138728c46: * #3524 allow the client to add and remove monitors * always log the full backtrace * #3524 handle individual monitor resizing * #3524 doh: don\'t modify the event which may be used elsewhere * #56 / #3524 allow multiple monitors in \'resize-display\' option * #3524 disentangle \'set-initial-position\' and \'requested-position\' * use \'damage\' logging * pylint warnings * #3524 multi monitor desktop mode * #56 let the build auto-detect which variants should use Xdummy * we need the dummy installed to check the version number * #56 use Xdummy on Debian: add dependency * discard invalid workarea values * #56 we don\'t support multiple screens * remove debug logging * #56 let\'s hope that newer Debian versions no longer mess up the X11 server * #56 ensure the commented out Xdummy command line is valid * fix error if XDG_DATA_DIRS is not set * #56 make get_monitor_properties reusable * we don\'t support multiple screens, only monitors * Fix shadow server test following changes in #3476 * oops: messed up patch context * #56 add disconnect patch to dummy driver builds * #56 enable the new exact monitor layout matching code * #56 match monitors and outputs * #56 try to disable unused crtc\'s outputs * fix benncode error when cuda info is missing * oops: using floats breaks backwards compatibility (bencode) * #3518 ffplay is video * #3519 use \'scroll\' encoding more judiciously * update patch has zero fuzz * #56 keep track of primary monitor, prettify_plug_name * #56 enable Xdummy on arm again * build the dummy driver on arm64, always build xpra * ffmpeg 5.0.1 * oops: we do still want those * #56 build updated dummy driver for Debian distros * simplify: don\'t enable by default on MacOS or MS Windows * MacOS needs a Python interpreter to run the signal listener * #3493 fix signal watcher libexec path on MacOS and MS Windows * ship xpra_signal_listener on MacOS * debug logging tweaks * fix setting of monitor attributes * provide XSync method, use it instead of (useless) XFlush * make it easier to initialize DPI awareness without loading GTK * latest pillow spits out warnings without this * #56 hook up monitor virtualization in seamless server * validate mapping size * oops: missed during renaming * remove unnecessary import * use a stronger type for membuf * #3504 use a MemBuf to quickly allocate host memory * use correct value for bits-per-pixel * #3504 make it clearer this is a CUDA buffer * #3504 simplify: don\'t use a download callback * explicitly unregister the CUDA RegisteredBuffer * #1467 remove redundant pointer limits patch * #56 oops: fix backwards compatibility for add_screen_size * #56 add modes to output as needed * add XSynchronize and XSync wrappers * #3366 pixel data is a list of bytes * re-use CurrentTime from pxd * #56 configure crtcs, outputs and monitors * #56 expose monitor info * #56 expose primary output, hide gamma for disconnected outputs * #56 also include gamma curves * #56 set WIDTH_MM and HEIGHT_MM dummy output properties * #56 skip irrelevant information * #56 capture most crtc / output info * #56 switch to milimeters everywhere * fix memleak: add missing XRRFreeOutputInfo * non ui clients may not have \'screen_sizes\' defined * make it easier to dump monitor info * #56 make the legacy dummy dpi option optional * allow a wider range of clocks * #3504 free buffers as soon as possible, log alpha channel merge cost * #56 oops, missed from a6248574105da32680a9cb2b624cc6d9cf896688 * #56 enable dynamic resolution matching with randr >= 1.6 * #56 with dummy 0.4.0 or later no need for pre-defined modelines * minor path / extension fixups * fix patch path, remove merged patch, use bz2 archive * dummy v0.4.0 * fix \'jpega\' decoding using plain \'jpeg\' decoder * #3504 add \'jpega\' support * also add jpeg / nvjpeg encoders * pylint warning * Fri Apr 08 2022 Scott Bradnick - Adding \'Recommends: lsb-release\' so \'Information\' -> \'Session Info\' returns results vs. \'unknown\'. * Fri Apr 08 2022 Scott Bradnick - Removing \'BuildRequires: lsb-release\'. * Fri Apr 08 2022 Scott Bradnick - Adjusting to use \'distribution-release\' for Tumbleweed and \'openSUSE-release\' for < Tumbleweed. * Fri Apr 08 2022 Scott Bradnick - Swapping out \'openSUSE-release\' (for \'distribution-release\') BuildRequires. * Thu Apr 07 2022 Scott Bradnick - xpra-paths.patch has been removed because the developer AATTtotaam committed https://github.com/Xpra-org/xpra/commit/0ed231fb95c8df3ec97d779698e6818faa7e5ef8 as a result of https://github.com/Xpra-org/xpra/issues/3501 \"build tweaks for openSUSE\" * Tue Apr 05 2022 Scott Bradnick - Updating .spec to accomodate TW (libexec) vs. Leap (lib) for %{_libexecdir}. * Mon Apr 04 2022 scott.bradnickAATTsuse.com- Update to version 4.4+git20220404.1e56be683: * #3503 don\'t use gtk for reading atom names * Mon Apr 04 2022 scott.bradnickAATTsuse.com- Update to version v4.3+git20220402.2f1c3abe7: * #3504 manage the cuda context outside the nvjpeg decoder * #3504 cuda gpu buffer transfer for opengl backend * #3509 protect access to mutable data * check if paths exist before * check XDG_DATA_DIRS/icons for pixmaps * remove unused declarations * #3509 prevent potential race condition * don\'t use arrays if we can use tuples * #3504 use pycuda rather than Cython * don\'t store cython generated file * #3504 common python definitions cannot live in pxd * move common definitions to pxd file * #3505 override sourced env with command line * #3505 command line can override config files * validate the option we\'re dealing with * #3458 revert f5b1b663bd981b326c4720731b7c97a007b2b247 now that cuda 11.5.2 supports GCC 12 * try to build with gcc 12 * arch=all triggers warnings, silence them * #3505 skip \'false\' values * Tue Mar 29 2022 Scott Bradnick - Adding a few missing BuildRequires/Requires/Recommends. * Tue Mar 29 2022 scott.bradnickAATTsuse.com- Update to version git20220328.5881281f1: * #3504 add nvjpeg decoder * remove unused definitions * misaligned positional arguments * remove unused definitions * prefer immutable tuples * workaround for libx264 version numbers * export \'relative-position\' and \'parent\' from X11 shadow servers * doh: group-leader and transient-for had gone AWOL * #3476 support OR windows in shadow servers * add debug logging to video delay calculations * Tue Mar 29 2022 Scott Bradnick - Initial version for xpra with \'xpra-html5\' pulled out. * Mon Mar 28 2022 scott.bradnickAATTsuse.com- Update to version git20220328.5881281f1: * #3504 add nvjpeg decoder * remove unused definitions * misaligned positional arguments * remove unused definitions * prefer immutable tuples * workaround for libx264 version numbers * export \'relative-position\' and \'parent\' from X11 shadow servers * doh: group-leader and transient-for had gone AWOL * #3476 support OR windows in shadow servers * add debug logging to video delay calculations * Sat Mar 26 2022 scott.bradnickAATTsuse.com- Update to version git20220326.5fd33c46d: * export \'relative-position\' and \'parent\' from X11 shadow servers * doh: group-leader and transient-for had gone AWOL * #3476 support OR windows in shadow servers * add debug logging to video delay calculations * never delay unless we have a video region * log damage image and scroll latency * remove unused code * #3501 build tweaks for openSUSE * #3477 fixup opengl probing (again) * #3502 control command for (un)setting start env * Fri Mar 25 2022 scott.bradnickAATTsuse.com- Update to version git20220325.7f8ca92ba: * #3477 fixup opengl probing (again) * #3502 control command for (un)setting start env * Thu Mar 24 2022 scott.bradnickAATTsuse.com- Update to version git20220324.785a44e79: * #3476 relative window position tracking * #3493 forgot to update mswindows exe script path * #3493 no need for a man page if the command is hidden * missed from d5e3d9b1d0248cca7fc265f5d390e0b9d63a7a82 * move manual to subdir of /u/s/doc/xpra * typo * fix distutils deprecation warning * #3493 move signal watcher to libexec * #3493 these files have moved * #3493 \'fs\' should mirror the real paths * Wed Mar 23 2022 Scott Bradnick - Updated to the following source version(s): * xpra_ver 4.3.2 * html5_ver 4.5.2 * uglifyjs_ver 3.15.3- Added pkgconfig requirement for \'xres\'.- Added a few new/missing items for \'%files\'. * Wed Dec 01 2021 Bjørn Lie - Drop unused pkgconfig(pygtk-2.0) BuildRequires: Not used since version 4.0, when python 2 support was dropped.- Add pre, post, preun and postun handling of xpra.socket. * Mon Oct 04 2021 Luigi Baldoni - Update to version 4.2.3 * network layer: + ensure the http headers cache is never modified unintentionally + invalid packet encoder names should not cause fatal errors + preserve audio packets chunking (avoids an HTML5 client bug) + prefer https links + prefer sha256 to sha1 for file transfer checksums + mmap setup error handling + `sndbuf_bytes` value was incorrect (currently unused) + socket timeout too long - broke VNC connections + AES DoS with unreasonably large number of password stretching iterations + tone down http content security policy for the HTML5 client + parsing of remote ssh command output + reply with a 404 if we have no http data to send + stricter validation of challenge digest attribute + stricter validation of packet indexes + specifying invalid compressors should not be fatal + handle more VNC clients correctly + server errors when VNC clients are connected + proxy sessions not found due to socket-dirs + mmap group lookup * encodings: + don\'t enable video encoders not present in \'encodings\' option + ffmpeg H264 errors with unreleased version + ffmpeg codecs silencing too many warnings + vpx encoder lossless mode detection + potential race conditions in the proxy server\'s encoder loop + visual corruption with scaled jpeg updates + incorrect error messages with the jpeg YUV decoder + error in \'void\' paint events (currently unused) + CUDA 11.4 and Ampere cards + RPM build errors when CUDA is disabled + restrict the number of NVENC errors tagged as transient + more robust OpenGL picture decoding sanity checks * packaging and platforms: + find the fakeXinerama library more reliably on all platforms + platform detection for CentOS / RedHat + missing default configuration files on MS Windows + missing webp with latest Pillow builds on MacOS + build fix for non-amd64 Debian (missing nvfbc) * clipboard selections getting stuck with MS Windows and MacOS clients * clipboard errors with some packet encoders sending strings * authentication modules not honouring `socket-dirs` option * make it easier to dismiss the splash screen * ssh password and key dialogs timing out without being shown * menu loading race condition causing empty start menu * window size hints may not have been honoured (rare case) * honour the force-replace-wm flag when upgrading * correctly handle command timeouts when probing servers * test scripts and command line tools fixups: unit tests, U2F tool, audio test, etc * system tray save-to-file debugging failures * minor cosmetic fixes to logging messages, unreachable code, icon loading errors * make it easier to run in a prefixed installation- Update xpra-html5 to version 4.5.1 and uglify-js to 3.14.2 * Tue Aug 10 2021 Luigi Baldoni - Update to version 4.2.2 * don\'t build ffmpeg codecs on i386 (crashy) * prevent crashes caused by svg conversion done in a thread * always stop the \'new-stream\' notification process * prevent subprocesses from becoming zombies * clean server on \'stop\' or \'exit\' * fix application geometry issues * show correct default values with \"xpra --help\" * stop responding to \'info\' requests when shutting down network layer: * honour the packet-encoding and compressors options * rencode packet encoder is not thread safe! * packet errors with bencoder and None values * don\'t assume the packet encoders handle bytes and / or strings client issues: * backwards compatibility with v3 servers for ssh start * incorrect client exit code subcommands: * \'start-gui\' invalid options shown * \'sessions\' and \'displays\' subcommands do not need a display * fix hidden \'wmname\' utility subcommand * many subcommands should send debug logging to stderr menu loading: * try harder to find valid menu entries to use * skip entries that cannot be executed * don\'t block the main thread when loading menus xpra top: * handle unicode window titles correctly * fix screen corruption due to threading * fix latency always showing as zero audio: * pipeline errors with aac encoder * X11 warning when starting microphone forwarding from the command line minor / cosmetic fixes: * cropped icons shown in html5 client connect page * logging, error handling * remove unused pulseaudio directories * \'1080p\' resize-display string matching * Sun Jul 11 2021 Luigi Baldoni - Update to version 4.2.1 build and packaging fixes: * missing dependencies * remove unused outdated code * remove runtime dependency on distutils for \'which\' * cryptic error when a pkg_config file is missing proxy server: * deadlocks when queues fill up too quickly * honour mode and display * disconnections under heavy load Network: * fix RFB server protocol, sockets not timing out with VNC clients * invalid error when bind option points to a directory * detect wifi network connections more reliably * fix \'xpra\' packet type auto detection * default to ssl-mode if the \'wss\' socket option is not specified * \'keydata\' connection attribute should override other options * correct exit code for encryption errors Encodings: * disable vaapi in ffmpeg codec by default (crashy / buggy) * NVENC errors when retrying after a transient failure * scroll detection bugs * webp encoder invalid memory access (corruption) Misc: * notification forwarding errors with SVG icons * disable SVG icon resizing (potential crashes on some platforms) * missing log prefix for \'xpra recover\' subcommand * faster server startup failures: don\'t wait for things that were not started (ie: audio) * fix commands started twice when upgrading (ie: ibus-daemon) * local start with explicit attach was broken on Posix * \'attach\' option should not be forwarded to the server (which then fails) * invalid window resize counter (used for resize loop prevention) * missing icon errors when html5 client disconnects from system-wide proxy server * file transfer errors when a \'top\' client is connected * don\'t claim that non-interactive clients use the screen * retry once after X11 query tree errors during startup * provide XDG_RUNTIME_DIR if it is not defined * add new 3x4K Xdummy modeline * minor cosmetic and debug logging fixes * Sun Jun 20 2021 Ferdinand Thiessen - Add python3-pyinotify as recommended dependency to allow watch for video device changes * Sat Jun 12 2021 Luigi Baldoni - Update to version 4.2 * use pinentry for password prompts and ssh prompts * nvjpeg encoder - also requires this commit to the html5 client * gui for starting remote sessions * new subcommands: recover, displays, list-sessions, clean-displays, clean-sockets - #3098, #3099 * many fixes: window initial position, focus, non-opengl paint corruption, slow rendering on MacOS, build scripts, handle smooth scroll events with wayland clients, always lossy screen updates for terminals, clipboard timeout, peercred auth options * support multiple clients using mmap simultaneously with non-default file paths * only synchronize xsettings with seamless servers * automatic desktop scaling is now disabled * workaround for gnome applications starting slowly- Update uglify-js to 3.13.9- Refresh xpra-paths.patch * Fri May 07 2021 Dirk Müller - fix build on architectures without pandoc * Fri Apr 23 2021 Luigi Baldoni - Fix build with ffmpeg 4.4 on Leap * Wed Apr 21 2021 Luigi Baldoni - Update to version 4.1.3 * fix window geometry constraints being applied wrong * fix xpra start failures when the display is already running (with use-display=auto) * fix vp9 libvpx encoder failures with older library versions * fix \'xpra top\' errors when the version string is missing * fix server errors when non interactive clients are connected (ie: \'xpra top\') * fix http server error on incomplete installations * fix http server builtin script handler * fix icon loading errors causing empty start menus * fix compilation against ffmpeg 4.4 and later on some distributions * exit more quickly with a failure if the VFB failed to start * correctly replace existing notifications with the gtk notifier backend * silence some rare errors and stacktraces * support CUDA 11.3- Update uglify-js to 3.13.4 * Tue Apr 06 2021 Luigi Baldoni - Update to version 4.1.2 * fix unnecessary screen update delays * fix screen refresh rate detection * increase the default screen update refresh rate * fix missing encodings with \'upgrade\' and \'upgrade-desktop\' subcommands * fix client failures due to missing socket directories * more correct API usage of \'notify2\' backend * fix `run_scaled` script handling of multiple arguments * fix ioctl error with nested SSH connections * fix video region detection error * fix sessions GUI not updating on process exit * fix compatibility with newer versions of python-zeroconf * fix directory listing with the builtin http server (still disabled by default) * fix the server\'s GetAll dbus property handler * fix display-name validation check * the \'exec-wrapper\' option no longer needs to use an absolute path * ignore bell audio devices * show the correct list of pressed keys, unkown modifiers * prevent the splash screen process from consuming too much CPU * better service configuration file location detection * packaging script fixes, library and documentation updates- Update xpra-html5 to 4.1.2 and uglify-js to 3.13.3- Refresh xpra-paths.patch * Wed Mar 17 2021 Luigi Baldoni - Update to version 4.1.1 (fixes boo#1182526) * ensure splash screen failures are not fatal, fix threading bug * avoid vaapi crashing in ffmpeg encoder * `xpra top` fixes: + correctly show the version number + laggy input handling and screen updates + long subcommand timeout * fix connection errors with trailing slash in display name * workaround API breakage in newer versions of python-zeroconf * warn just once if expected GStreamer element properties are missing * map more applications to text mode (\'code\', \'jetbrains\') version 4.1: * Overhauled container based build system * Splash screen * `run_scaled` utility script Client: * header bar option for window control menu * generate a qrcode to connect * show all keyboard shortcuts * progress bar for file transfers * GTK cairo backend support for more native bit depths * disable xpra\'s keyboard shortcuts from the system tray menu * automatically include the server log in bug reports OpenGL client backend: * render at fixed bit depths with the `pixel-depth` option * support more bit depths Clipboard: * MacOS support for images, more text formats, etc * MS Windows support for images * wayland clients Server: * faster server startup * `xpra list-windows` subcommand * new window control commands: move - resize * remote logging: from server to client * support window re-stacking `xpra top`: * show pids, shortcuts * more details in the list view * show speed and quality Display: * bumped maximum resolution beyond 8K * set the initial resolution more easily using the \'resize-display\' option Encoding: * server side picture downscaling * libva hardware accelerated encoding * NVENC 30-bit accelerated encoding * vpx 30-bit * x264 30-bit * faster 30-bit RGB subsampling * scroll encoding now handled more generically * black and white mode Network: * IGD / UPNP * SO_KEEPALIVE option * clients can be queried using local sockets * specify connection attributes using the connection string * nested SSH tunnels * websocket header modules * specify the socket type with socket activation * expose the packet flush flag * `xpra shell` subcommand for interacting with processes in real time * custom group sockets directory permissions and name Testing: * better test coverage * cleanup output- Refresh xpra-paths.patch- Add xpra-html5 (now distributed separately) and uglify-js (required by the former) tarballs- Spec cleanup * Thu Feb 25 2021 Antonio Larrosa - Require the pulseaudio-daemon capability instead of the pulseaudio package, so alternative implementations can be used (boo#1182730). * Wed Feb 10 2021 olafAATTaepfle.de- Fix regex for /bin/bash * Fri Feb 05 2021 olafAATTaepfle.de- Fix requires for /bin/bash
|
|
|