1v0.37 2===== 3 4- Deprecated: SpiceMainChannel:color-depth and SpiceSession::color-depth see 5 ([rhbz#1543538] and [rhbz#1350853]). 6- Fix race condition on keyboard modifiers 7- Fix cursor on Wayland: Fixes hidden cursor #83 8- Fix clipboard on X11: avoid request client clipboard data when is known that 9 there is no data. 10- Improve code around usb redirection feature 11- Fix on usb redirection: Don't add same device twice 12- Fix on smartcard: Warn if multiple readers are detected 13- Add instrumentation for frame and queue statistics of SpiceDisplay using 14 [Recorder] library 15- Fix Warnings with GStreamer >= 1.14 on video decoding due setting buffer's PTS 16- Fix some Critical warnings when build without GNOME desktop integration 17- Fix Criticals when no primary monitor is set 18- Documentation fixes 19- Added optional dependency: [Recorder] 20- Require GStreamer >= 1.10 (optional) 21- Require usbredir >= 0.7.1 (optional) 22- Translations: 23 - Added Czech 24 - Fix Italian 25 26[Recorder]: https://github.com/c3d/recorder 27[rhbz#1543538]: https://bugzilla.redhat.com/show_bug.cgi?id=1543538 28[rhbz#1350853]: https://bugzilla.redhat.com/show_bug.cgi?id=1350853 29 30v0.36 31===== 32 33- Add meson build: autotools will be removed in a future release 34- Deprecate PulseAudio backend: it will be removed in a future 35 release, please use GStreamer instead and report issues 36- Add H265 stream support (requires GStreamer support) 37- Add SpiceQmpPort helper to interact with QEMU monitor over a Spice port 38- Display a message if EGL support is required (with dmabuf local rendering) 39- Many GstVideoOverlay improvements 40- Smooth-scrolling improvements 41- Fix accumulating decoded frames with GStreamer 42- Fix reconnection handling 43- Fix small memory leaks due to bad refcount of images in the cache 44- Fix build for newer LibreSSL 2.7 45- Fix a crash on Windows with libusb 1.0.22 when UsbDk is not installed 46- Require GStreamer >= 1.0 (no longer optional) 47- Require spice-protocol >= 0.12.15 48- Require json-glib >= 1.0 49- Require Gtk+ >= 3.22 (optional) 50- Require usbredir >= 0.5 (optional) 51- Require libusb >= 1.0.16 (optional) 52- Require libcacard >= 2.5.1 (optional) 53- Require lz4 >= 1.7.3 (optional) 54 55v0.35 56===== 57 58- TLS v1.0 was disabled (rhbz#1521053) 59- New SpiceSession::disconnected signal 60- Use GstVideoOverlay if possible to render directly on Gstreamer's sink element 61- Handling smooth-scroll for scroll events on touchpads in Wayland 62- CELT codec is disabled by default but configure will error out if detects that 63 its headers are available unless --enable-celt051/--disable-051 is used. 64- Glib requirement bumped to 2.46 65- Spice-protocol bumped to 0.12.14 66- The spice-controller library was removed 67- Fix migration regression introduced in v0.34 (rhbz#1558043) 68- Fix connecting from big endian machine including SASL authentication 69- Webdav: Fix some runtime warnings 70- Introspection: Fixes for SpicePortChannel, SpiceDisplayChannel, 71 SpiceRecordChannel, SpiceInputsChannel, SpiceMainChannel 72- Enable ACL support on FreeBSD (fdo#104525) 73- win32: Convert locale dir from UTF-8 to local encoding 74- Fix width computation for palette images (rhbz#1508847) 75- Introduction of spice+tls:// URI format to tls all channels 76- Fix keycodes on Xwayland (rhbz#1479682) 77- Memory leak fixes, new tests 78 79v0.34 80===== 81 82- NOTE: this is the last release with the spice-controller library 83- add VP9 codec support 84- API: add spice_display_change_preferred_video_codec_type() 85- API: add new SpiceCursorChannel:cursor property, deprecate "cursor-set" signal 86- API: spice_audio_new() is no longer in public header (it was deprecated 87 for a long while) 88- fix clipboard crash and other regressions from 0.33 89- report invalid or stopped streams to the server 90- use playbin instead of decodebin with gstreamer > 1.9 91- support GST_DEBUG_BIN_TO_DOT_FILE debug 92- deprecate a few esoteric options from --spice group: 93 --spice-color-depth, --spice-cache-size, --spice-glz-window-size used 94 mainly for development. They may be available with spicy in the future. 95- win32: handle failures when starting win-usb manager 96- win32: removed windows usb-clerk support, replaced by UsbDk 97- win32: fix alt-tab & grab issues 98- spicy learned to tweak codec preference, cancel transfer, and resize 99 precisely for debugging purposes 100- use keycodemapdb submodule, drop perl(Text::CSV) dependency 101- file-xfer: fix bad filename encoding 102- file-xfer: handle new error kind 103- build-sys fixes for macos 104- replace some deprecated gtk code 105- memory leak fixes, new tests 106 107v0.33 108===== 109 110- lz4 compression of USB channel 111- keyboard: pause key fixes, set keypress-delay to 0 on local socket 112- mouse: fix pointer grabbing in server mode 113- clipboard: fix copying text from old application without UTF8_STRING 114 target (motif) 115- file-xfer changes: grouping all transferred files per operation 116- new spice_file_transfer_task_get_{total_bytes,transferred_bytes} API 117 and associated properties 118- new SpiceChannel:socket property 119- fix rendering issues with CSD on Windows 120- fix gettext support, some translations updates 121- fix display refresh issue on f25 after resize (init egl only when 122 required) 123- many leaks and races fixes, new tests 124 125v0.32 126===== 127 128libspice-client-gtk API/ABI break: library soname/version has been 129bumped, and deprecated symbols have been removed. In practice, most 130of the API (in particular for language bindings) should be unchanged. 131 132- drop gtk+ 2.0 support 133- require gtk+ >= 3.12 and glib >= 2.36 134- add GStreamer as a backend for mjpeg, vp8 & h264 decoding 135 This allows the upcoming Spice server release to send video 136 regions with better codecs. 137- a number of spice-gtk structures are now private 138- spice-gtk widget is no longer a GtkDrawingArea but an opaque type 139 with only guarantee to be a GtkWidget 140- virgl: use GtkGlArea if possible (on wayland only atm) 141- virgl: various fixes (multiple display, resize, canvas-less support) 142- win-usbredir: use UsbDk backend when available and various 143 improvements 144- ensure that dnd file copy get cancelled 145- some JP and KR keyboard handling fixes on Windows 146- fix SASL GSSAPI 147- fix ipv6 proxy address handling 148- allow smaller widget with scaling enabled 149- add spice_main_request_mouse_mode() to request mouse mode 150- add SpiceGtkSession:sync-modifiers to change modifiers sync behaviour 151- various video decoding improvements 152- use GTask instead of GSimpleAsyncResult 153- misc bindings, leaks, warnings, and spelling fixes 154 155v0.31 156===== 157 158- NOTE: this is the last release to support gtk+ 2.0 159- add local GL scanout support for virtio-gpu/virgl guests 160- new file-transfer API, to be able to monitor transfers etc 161- new spice_display_change_preferred_compression() API 162- better authentication error reports 163- usbredir: drop isoc packets on low bandwidth (rhbz#1264156) 164- usbredir: add counter of free channels (rhbz#1298772) 165- add a toplevel include header spice-client-gtk.h 166- grab keyboard based on session focus (rhbz#1275231) 167- don't print error message on successful file transfer (rhbz#1265562) 168- allow simultaneous support for Pulse and GStreamer audio 169- remove GSlice usage 170- some BE endianness fixes 171- misc leak and use after-free fixes 172- documentation fixes 173 174v0.30 175===== 176- spice-protocol is no longer bundled with spice-gtk. Requires 177 spice-protocol >= 0.12.10 178- Handle single headed monitors that have a non-zero x, y config 179- various small improvements to 'spicy' test application 180- Fix build with automake < 1.13 181- various bug fixes and improvements 182- New API: 183 - spice_main_update_display_enabled() 184 - Add SpiceSession::preferred-compression property and 185 --spice-preferred-compression commandline switch (requires a 186 yet-to-be-released version of spice server) 187- ability to set the SpiceDisplay::keypress-delay property via a new 188 SPICE_KEYPRESS_DELAY environment variable 189 190v0.29 191===== 192 193- sync guest audio volume with client volume 194- use stream volume for PulseAudio source 195- on Windows, fail early during initialization if the usbclerk service 196 can't be reached 197- fix audio and usb managers to work with client provided fds 198- many crasher and bug fixes 199 200v0.28 201===== 202 203- webdav improvements: 204 - no longer spawn a server thread 205 - no longer use local TCP sockets & port 206 - provides read-only mode with SpiceSession:share-dir-ro 207 - requires libphodav-2.0 glib-2.0 >= 2.43.90 libsoup-2.4 >= 2.49.91 208- drop gstreamer 0.10 in favour of 1.0 209- add spice+unix://path connection support 210- accept URI with empty parameters value, 211 such as spice://localhost?port=5900&tls-port= 212- fixed lz4 support 213- silence some harmless warnings 214- misc API documentation improvements 215- switch-host migration fixes 216- learn to build --without-gtk 217- bugs and regressions fixes 218 219v0.27 220===== 221 222- add GStreamer 1.0 audio support 223- add LZ4 compression algorithm support 224- learn to release the keyboard grab on release keys pressed (ctrl+alt 225 by default), to let alt+f4/alt-tab and others for client side 226- session and channels life-cycle changes: a channel will no longer 227 hold a reference after session disconnection 228- migration fixes, fail early on client provided fds (this is left to 229 solve in the future) 230- fix support for Gtk+ 3.0 on Windows 231- clipboard size fixes 232- server-side pointer drawing on grab 233- new APIs: 234 spice_usb_device_get_libusb_device() 235 spice_session_is_for_migration() 236- build-sys improvements 237 238v0.26 239===== 240 241- allow transferring multiple files at once with dnd 242- avoid guest-side fd leak when transferring empty files 243 with dnd 244- add support for passing a username with SASL authentication 245- hide guest cursor when ungrabbing mouse in server mode 246- make sure client cursor is in the same position as the guest cursor when 247 ungrabbing mouse in server mode 248- add man page for command line options of application using spice-gtk 249- strip '\0' from text clipboard data 250- fix synchronization of keyboard modifiers 251- coroutine improvements 252- use http by default when SPICE_PROXY uri has no scheme 253 254v0.25 255===== 256 257- Fix SPICE_GTK_MICRO_VERSION define for default value 258- Make "phodav", the webdav server, an external dependency rather than 259 a submodule 260 261v0.24 262===== 263 264- support folder sharing, via WebDAV channel 265- add HTTPS proxy support (requires glib 2.28), and Basic auth 266- add SPICE_GTK_CHECK_VERSION macro 267- advertise SASL capability early (to help fips-enabled servers) 268- fix crash when releasing primary surface 269- fix a few memory leaks with SASL 270- fix spice_display_get_pixbuf() with offset area 271- build-sys improvements 272- note: until now, providing an invalid plain-port didn't error, and 273 was falling back silently on tls-port. With this release, an error 274 will be reported if the port can't be opened. 275 276v0.23 277===== 278 279- support Opus codec for audio channels 280- ssl: use tls 1.0 or better 281- support gdbus instead of dbus-glib when available 282- misc build-sys, compile and runtime fixes 283 284v0.22 285===== 286 287- improve inverted cursor support 288- use system-wide trust certificate store 289- make sasl support work with other method than MD5 290- fix some clipboard crasher, limit clipboard size 291- fix various regressions: 292 usbredir, alt-tab on win32, palette crash, agent notification, old 293 protocol support, sasl ending crash, gthread coroutine crash, close 294 sockets on migration, pulse backend crash 295- fix a few memory leaks 296- build-sys improvements 297 298v0.21 299===== 300 301- improve inverted cursor support 302- win32 usb redirected device uninstall fix 303- add support for libusb hotplug API 304- smartcard initialization fixes 305- c&p converts line-endings if necessary 306- rendering and overall performance improvements 307- build and bindings fixes 308 309v0.20 310===== 311 312- adaptive video streaming support (sync with PulseAudio backend only) 313- add spice_usb_device_manager_get_devices_with_filter() 314- add --spice-secure-channels to explicitely specify secure channels 315- multi-monitor, win32, USB redir fixes 316- add basic gtk+ wayland and broadway backend support 317- removed the GnomeRR code 318 319v0.19 320===== 321 322This is a bugfix only release, except the snappy name change 323- snappy has been renamed to spicy-screenshot 324- Several file-xfer fixes and improvements 325- Many win32 and USB redirection related fixes 326- Compile and work again with RHEL6 and older glib releases 327- misc fixes and improvements 328 329v0.18 330===== 331 332- Build fix with Gtk+ unstable. 333- MinGW build fixes with old headers 334- Fix USB coldplug race 335- Fixes rhbz#908057 336 337v0.17 338===== 339 340- Update spice-common with fedora 875348, 826036 fixes 341- Multi-monitor fixes (avoid monitor order shuffling, fix mouse offset 342 if monitor 0 is not at +0+0 and let agent do monitor offset) 343- Add support for VD_AGENT_CAP_SPARSE_MONITORS_CONFIG 344- Add controller & session "proxy" properties 345- Add drag and drop file copy support to send file to guest, you will 346 need capable agent to use that feature. Adds spice_main_file_copy_async() 347- Introspection fixes 348- Build fixes 349 350v0.16 351===== 352 353- Fix crash with SSL connection (#890464) 354- Send monitor config to the agent on spice_main_set_display_enabled() (#881072) 355- Fix channel leak and wrong condition in spice_channel_flush() 356- Build fixes 357 358v0.15 359===== 360 361- Add HTTP Proxy support (only with glib >= 2.26) 362- Add "port" channel support, to allow arbitrary communication on top 363 of spice connection 364- usb-redir: fix migration support 365- win32: various keyboard & mouse fixes 366- Add info message when USB dialog is empty 367- Fix initial black screen on some 16bits guest 368- Various bug fixes and improvements 369 370v0.14 371===== 372 373- Support for seamless migration 374- Improve scaling handling, add downscale-only property to give more 375 control over scaling 376- Better handle key press/release events in high-latency situations, 377 this should avoid unwanted key repetitions 378- Improve unescaping in URI parsing 379- Fix symbol versioning which was broken in 0.13 380- Fix for CVE-2012-4425 381- Various bug fixes and improvements 382 383v0.13 384===== 385 386- ABI break! SONAME has been bumped, all programs and libraries 387 linking to spice-gtk need to be recompiled against this version 388- Add support for USB device redirection on Windows 389- Add monitors config support (multiple monitors in same display) 390- Inhibit automount on GNOME desktop, to ease USB redirection 391- Better video support (reduce some glitches) 392- Misc migration fixes 393- Various bug fixes and improvements 394 395v0.12 396===== 397 398- Fix memory leak when guest is resized 399- Fix color-depth setting 400- Hide/Show cursor correctly when needed 401- Fix blue-tinted video with old Spice servers 402- Correct scroll-event not received with recent Gtk+ 403- Fix various migrations issues 404- Allow to disable CELT encoding at runtime with SPICE_DISABLE_CELT 405- Various crash fixes (on pubkey, recording, clipboard) 406- Build changes (common submodule) and fixes 407 408v0.11 409===== 410 411- Fix semi-seamless migration regression 412- Add Spice session UUID and name support 413- Add foreign menu support to controller library 414- Add a simple controller testing tool spice-controller-dump 415- Build fixes 416 417v0.10 418===== 419 420- USB redir is now aware of host/guest side filtering 421- you can query spice_usb_device_manager_can_redirect_device() 422- fix the usbredir channel lifetime to be equal to session lifetime 423- set keepalive on channel socket 424- fix hangs on windows when using ssl chanels 425- add a SpiceDisplay::zoom-level to maintain a scaling ratio 426- add controller ENABLE_SMARTCARD option 427- remove a few warnings, ui improvements, build fixes 428 429v0.9 430==== 431 432- Add command line options for setting the cache size and the glz window size 433- Add a USB device selection widget to libspice-client-gtk 434- Various bug fixes and code improvements 435 436v0.8 437==== 438 439- add USB redirection support, see Hans comments in the log and that 440 post for details: http://hansdegoede.livejournal.com/11084.html 441- introduce SpiceGtkSession to deal with session-wide Gtk events, such 442 as clipboard, instead of doing it per display 443- many cursor and keyboard handling improvements 444- handle the new "semi-seamless" migration 445- support new Spice mini-headers 446- better coroutines: fibers on windows & jmp on linux 447- add Vala vapi bindings generation 448- many bug fixes and code improvements 449 450v0.7 451==== 452 453- smartcard support 454- better video playback performance (jpeg-turbo & audio improvements) 455- support for audio volume (needs qemu support) 456- controller support for Windows (NamedPipe) 457- make perl-Text-CSV optional for tarball builds 458- new spice_get_option_group()/spice_set_session_option() 459- keyboard improvements, grab-sequence can be configured, various windows fixes 460- new tool spicy-stats, to collect informations during a session 461- bugfixes: memleak fixes, SASL fixes, crash with virt-manager 462- various build fixes, should build on MacOS as well now 463 464v0.6 465==== 466 467- multi-head is working now! 468- change client resolution if guest can't 469- support sharing large clipboard, and images 470- multiple clibpoard selection 471- support SASL authentication 472- add experimental/unstable controller API 473- and a bunch of various smaller fixes 474 475v0.5 476==== 477 478- Compatibility with gtk2 and gtk3 479- Migrations: seamless and switch host methods 480- SSL verification: public key, subject and host checks added 481- spice:// url parsing learned "password" argument 482- spicy: recent connexions UI added 483- various minor fixes 484 485v0.4 486==== 487 488- sync video with pulseaudio backend 489- build with mingw, and run on Windows 490- various minor fixes 491 492v0.3 493==== 494 495- fix Windows QXL driver support 496- fully asynchronous operations using coroutines 497 (thanks go to gtk-vnc devs) 498- cairo display (old XShm display can be enabled with --with-x11) 499- scaling support for cairo display 500- experimental audio support using GStreamer 501- API reference gtk-doc 502- more cursor type support 503- various fixes and cleanup 504 505v0.2 506==== 507 508- gtk: disconnect record stream when record_stop() 509- README: add a few missing dependencies 510- build: use git-version-gen 511- build: re-enable -Wflags, and fix a few warnings 512- build: fix make -j 513- gtk: add zlib decoder 514- gtk: add jpeg decoder 515- gtk: progressive agent message recomposition 516- gtk: add dispay config 517- gtk: add clipboard sharing for text 518- TODO: update 519- gtk: put some g_message() under SPICE_DEBUG 520- gtk: add channel.set_capability() 521- gtk: add {session,channel}_open_fd() 522- gtk: add CELT playback 523- gtk: add CELT recording 524- gtk: save/restore spicy configuration 525- gtk: don't uncork new streams 526- gtk: delay PA stream creation when context is ready 527- gtk: visibility option for statusbar/toolbar in spicy 528 529v0.1.0 530====== 531 532- desktop display, using GLZ compression 533- audio playback/recording with PulseAudio 534- video in mjpeg 535- python and gobject-introspection modules 536- spicy: a simple Gtk client 537- snappy: a command line screenshot tool 538