There was a request on the Google+ groups to publish a complete list of updates in the RTC SDK v8 release on the RTC website, so … here it is. Enjoy!
— Short summary of changes from v7.78 (2017.Q1) to v8.14 (2017.Q2) —
1. “TRtcConnection” component extended to provide direct access to all
properties and most methods of “TRtcDataClient” and “TRtcDataServer”
components by using the “Sender:TRtcConnection” parameter directly
from RTC events, without the (previous) need for explicit typecasts.
See v7.101 update log for details.
2. “TRtcDataRequest” component extended with “Write”, “WriteEx” and “PostMethod”
methods to simplify preparing and sending of requests with no request content
body and/or content body small enough to fit into Clients Memory and to remove
the (previous) requirement to *always* implement the “OnBeginRequest” event.
See v7.102 update log for details.
3. RTC components extended with a number of new methods and events for centralized
logging and monitoring of all content being received (Client and Server side)
without messing up the original content, while at the same time allowing raw
data to be modified in-place if needed, before it goes into “processing”.
See v7.103 update log for details.
4. Fixed a bug in the “TRtcHttpClient” component which resulted in the “OnResponseDone”
event and the last “OnDataReceived” event (with Response.Done=TRUE) NOT triggering
on the Client if the Server was closing the connection after every request (HTTP/1.0)
5. TRtcValue objects extended with new methods for “REST” support and improved parsing and
generation of XML-RPC and JSON content (including support for “JSON-RPC 1.0″ and “2.0″)
See v7.105 update log for details.
6. RTC Remote Functions (“TRtcServerModule” and “TRtcClientModule” components) extended
with built-in support for “JSON-RPC 1.0″, “JSON-RPC 2.0″ and plain “JSON” Data Formats,
plus a number of new “Data Request Modes” which can be used to communicate with a lot
of different 3rd-Party APIs and/or write APIs for use by 3rd-Parties – including “REST”
and other request modes where any part of a remote function call can be in the “URI”.
With “DataReqModes”, you can even make complex remote function calls from the Address
line of any Web Browser – if you enable this mode on your “TRtcServerModule” component,
which can be used for quick testing or to provide public APIs for use by a 3rd-party.
See v7.106 – v7.109 update logs for details.
7. “TRtcFunctionInfo” class (used to store and transport remote function objects),
has been extended with new methods and properties to simplify writing and calling
remote functions which accept parameters as an array (usually sent/received in
the ‘params’ array) in addition to (or as a replacement for) named parameters.
See v7.110 update log for details.
8. Added support for using anonymous methods as an alternative way to write event
handlers for all RTC components. For this purpose, new “Anon” methods have been
added to all RTC components, with an overloaded method for each event type.
See v7.111 and v7.112 update logs for details.
9. When using the “TRtcClientModule” component with built-in RTC Encryption,
the last Result received from the Server before closing the Session was
being rejected by the Client, because the Client was closing its Session
before decrypting the Result received. This has now been fixed.
10. Added support for using anonymous methods with “PostQuickJob” and “PostGUIJob”
procedures – available in the “rtcThrPool” unit as a simple way for posting quick
jobs to be executed asynchronously from the RTC Thread Pool or the Main Thread (GUI).
11. All “Updates*.txt” files moved from the “Help” folder to “Help/UpdatesLog” sub-folder.
12. “RealThinClient SDK Components Hierarchy” image and PDF file (ready to print) are
now available in the “Help” folder (rtcSDK_Components.png and rtcSDK_Components.pdf),
providing a simple overview of all components included in the RealThinClient SDK.
13. The “Obj” property on “TRtcInfo” and “TRtcSession” classes was REPLACED with
new “asObj” and “asPtr” properties, making the “TRtcObject” class OBSOLETE,
so it was REMOVED! RTC Demos and Example Projects have been updated, as needed.
Read below for more details (manual changes in user code might be required).
14. “Version_SDK” property moved from “TRtcConnection” to “TRtcComponent”
class, and … public variables on RTC Value Objects updated to properties.
15. Added and/or replaced several properties on “TRtcClientModule” and
“TRtcServerModule” components to improve Automatic Session handling, and
fixed “TRtcServerModule” and “TRtcClientModule” Automatic Session handling.
16. TRtcHttpClient, TRtcHttpServer, TRtcDataProvider, TRtcDataRequest, TRtcDataRouter
and TRtcLoadBalancer components have been extended with support for WEB SOCKETS.
17. Introduced “RTC_OBJECT_CLASS” and “RTC_OBJECT_CLASS2″ compiler defines as
a “quick fix” for Projects extending the “TRtcObject” class, without the
need for (other) manual changes described in points (A) and (B) below.
18. Improved TRtcHttpGateClient components Login and AutoLogin functionality.
19. Support for RAD Studio 10.2 Tokyo.
20. Fixed the default Cookie delimiter for HTTP Requests.
See v8.02 updates for details (below).
21. Fixed “OnResponseAbort” event NOT triggering.
See v8.03 updates for details (below).
22. Fixed “Sync” method, which was catching and silently
swallowing all Exceptions raised in the Main Thread.
See v8.04 updates for details (below).
23. Fixed a regression bug in the “TRtcClientModule” component, which
broke remote function reposting in case of a failed Connect attempt,
a Disconnect with a Reconnect, or in case of Session expiration.
See v8.01 and v8.05 updates for details (below).
24. Fixed a problem with the old listening socket still blocking
the Port for some time after that socket was already closed.
See v8.05 update for details (below).
25. Fixed the SHA1 function on 64-bit platforms (WebSockets).
See v8.06 update for details (below).
26. Improved compatibility with the FPC 3.0+ compiler.
27. Fixed “FORCE_ANSI_STRING” and “FORCE_WIDE_STRING” support.
28. Fixed Win64 blocking socket support for FPC.
29. Added package file for CodeTyphon (http://www.pilotlogic.com)
30. Fixed overflow handling in “GetTickTime” and “GetTickTime64″ functions.
31. Fixed Thread Synchronization issues and optimized Sync() memory usage.
32. Fixed RTC Timers to work correctly on 32-bit and 64-bit platforms.
33. Added “RtcTotalJobsQueued” function (jobs in the thread queueu, waiting).
34. Reduced the number of unused Virtual and Worker Threads being created.
35. Fixed WebSocket support on platforms with ARC (iOS and Android).
36. Added “RTC_WINHTTP_AUTOLOGON_SECURITY_LEVEL” as a new global parameter.
37. “Quick Start”, “Demos” and “Tools” Project Groups moved to sub-folders.
—- Detailed list of all changes from v7.78 to v8.14 —