# 2023-12-12 Version 3.0.0 Final 3.0.0 release just a little over two weeks after the last 3.0.0-rc0. This contains bugfixes, drops some legacy code, implements a small feature request and adds some improvements to the build system. Most notably is the new PreventInSourceBuilds.cmake which does exactly what the name implies, it aborts builds where source equals build directory. If you can not use out of source tree builds for some reason, you can circumvent this measure with the CMake setting -DALLOW_IN_SOURCE_BUILD=ON Noteworthy changes: * add support for AF_VSOCK #9561 * xfreerdp drop X11 GDI implementation #9492 * fixed connection freeze with childSession #9594 * fixed relative mouse input issues #9608 * fixed issues with drive redirection #9610 * simplified mac build #9601 * fixed TSMF to build again #9603 * fixed command line /gfx parsing bug #9598 * prevent in source tree build #9550 * fixed various issues with settings #9595, #9596 * add E2K cpu support in WinPR #9599 * fixed wfreerdp DPI settings when used as embedded window #9593 * android add mouse hover support #9495 For a complete and detailed change log since the last release run: git log 3.0.0..3.0.0-rc0 # 2023-11-27 Version 3.0.0-rc0 Nearly 2 months of testing, bugfixing and API refinements later we´re happy to announce the first release candidate for FreeRDP 3.0 The API should now be considered stable and only minor changes (if at all) will happen from this point on, so every project using FreeRDP can check compatibility with upcoming 3.0 Noteworthy changes: * Updated rdpSettings API #9465: * getter/setter now use enum types for keys (generates compiler warnings for mismatch) * Refined functions (added missing, dropped problematic ones) * prepared opaque settings (direct struct access now deprecated) * Server side [MS-RDPEL] channel #9471 * Relative mouse movement support #9459 * relocatable pkg-config files (enable with -DPKG_CONFIG_RELOCATABLE=ON, #9453) * cliprdr dropped support for fuse2 (#9453) * added support for uriparser for clipboard file:// parsing (#9455) * aFreeRDP translation for traditional chinese (zh-rTW) added (#9450) * fixed sdl-freerdp crash on credential dialog (#9455) * fixed sdl-freerdp alt+tab in fullscreen (#9442) * added /connect-child-session option (WIN32 only, #9427) * fix rfx-image codec setup (#9425) * added missing cmake configuration for winpr-tools (#9453) * cleaned up cmake configuration files, dropped no longer required ones (#9455) * fixed x11 keyboard layout detection (#9433) * add missing API calls for server implementation (tested against ogon, #9453) * keep dynamic channels in a hash table instead of a list (#9448) * keep TSCredentials in server peer instance (#9430) * fix FFMPEG/AAC encoding (#9576) * support remote credential guard (#9574) * fix printing on mac os 14 (#9569) * improve RPC gateway support (#9508) * add opus audio support for gnome-remote-desktop (#9575) * server side handling of mouse cursor channel [MS-RDPEMSC] (#9513) For a complete and detailed change log since the last release run: git log 3.0.0-rc0..3.0.0-beta4 # 2023-09-31 Version 3.0.0-beta4 Noteworthy changes: * Improved and fixed AVD authentication, now allows retries for machines just starting up * Improve RDP file parser, prepare new fields used by AVD * Fixed and improved pen support in multitouch implementation (xfreerdp) * Lots of smaller code and leak cleanups For a complete and detailed change log since the last release run: git log 3.0.0-beta4..3.0.0-beta3 # 2023-08-31 Version 3.0.0-beta3 Noteworthy changes: * fix xfreerdp keyboard on mac os * Various crashes and input check fixes * Improved logging of autodetect, redirection and fastpath failures * Smartcard emulation now selectable at runtime * Allow certificates without a subject to pass client checks * Fix FindFirstFile issues on android * Add FREERDP_ENTRY_POINT to silence -Wmissing-prototypes warnings for library entry points * Add WINPR_RESTRICT to enable restrict (C99) or __restring (MSVC) keywords for compiler * Fix support for older OpenSSL versions For a complete and detailed change log since the last release run: git log 3.0.0-beta3..3.0.0-beta2 # 2023-08-03 Version 3.0.0-beta2 Noteworthy changes: * Update CMake defaults, now all features are enabled by default with a platform independent option if multiple are available. * SDL client: (basic) multimonitor support * SDL client: fix dialog cleanup order (crash fix) * clipboard: fix FUSE shutdown crash * fixed drive redirection: FindNextFile did miss some files/directories * improved AAD support: honor rdp file options * improved (gateway) http failure logging * improved shadow server error handling * improved CMake configuration (using find_dependency) * updated timezone definitions * mbedTLS build fixed * improved MINGW build support For a complete and detailed change log since the last release run: git log 3.0.0-beta2..3.0.0-beta1 # 2023-07-21 Version 3.0.0-beta1 We are pleased to announce the first beta release for the next stable 3.0 series of FreeRDP. It has been a huge endeavour to implement all the new shiny bells and whistles as well as clean up the code base and we´re still ironing out some smaller glitches. This is the first API breaking change since the 2.0 series and there are some adjustments to be made for existing applications. See https://github.com/FreeRDP/FreeRDP/wiki/FreeRDP3-migration-notes for help (still incomplete) Noteworthy changes: * Support for AAD/AVD authentication * Support for websocket transport * Support smartcard authentication (TLS and NLA) * Full smartcard emulation support (login with certificate + key) * Rewritten proxy, new module API * New reference client based on SDL2 (work in progress) * Rewritten logging, now parsing issues are all writing to the log so that issues with protocol incompatibilities can be easier analyzed by just turning on logging * Full OpenSSL 3 support * Internal implementations for RC4, MD4 and MD5 (required for non critical parts in RDP but not part of more recend SSL libraries) * Updated RDP protocol support * Improved xfreerdp remote app support * Reworked internal state machine for both client and server implementations * Server implementations can now make use of connect-time network autodetection * Improved clipboard handling, now also support server-to-client file transfer (currently xfreerdp only) * EnhancedRemoteApp support: Utilizing the more modern standard allows remote apps with less glitches and window shadows * Added client- and server-side handling for RDSTLS * Support for the graphics redirection channel For a complete and detailed change log since the last release run: git log 3.0.0-beta1..2.10.0