Changes in RemObjects SDK 4.0 for Delphi
This document lists the changes introduced by new versions of RemObjects SDK for Delphi.
New in Version 4.0.19 (Build .565)
(Status: April 20, 2007)
Enhancements
- 3356: TROIndyUDPChannel now implements IntSetServerLocator()
- 3352: GetComplexTypes() added
- 3349: Improvement of TROMessage.ProcessException
- 3271: new event for SoapMessage: ParseEnvelopeComplete
- 3184: Support for new CodeGear Delphi 2007 for Win32
Fixes
- 3425: Delphi 2007 compiler doesn't handle variables in search path; adjusted setup to install full paths
- 3417: BroadcastChat sample: typo in "helpful tips"
- 3350: Delphi 2007 IDE changes broke CodeGen
- 3320: Hydra's RemObjects SDK Services sample don't display correct data for /rodl
- 3291: Synapse_D10 package is missing search path
- 3288: Fixes for new $M+ warnings introduced in Delphi 2007
- 3272: Some problems installing RO into Kylix 3
- 3261: "Class factory not found" error for certain for SOAP scenarios
- 3256: Codegen: problem compiling *_intf.pas unit
- 3024: Incorrect file filter in Service Builder service import
- 2926: Bug in ROArray.SetItemRef
- 2502: Problem when removing TROEmailServer from a form (Delphi 6 only)
New in Version 4.0.17 (Build .557)
(Status: March 6, 2007)
Fixes
- 3241: RO/d and Service Builder fails to load RODL libraries if undeclared variable is used in uses
- 3238: Synapse KeepAlive property setter has no effect
- 3207: HttpSpy fails to run in 4.0.17 [old/wrong copy of .exe was deployed]
- 3187: Error importing CodeCentral WSDL using RO Win32
- 3158: Problem with destroying a PerClientClassFactory instance
New in Version 4.0.17 (Build .551)
(Status: February 22, 2007)
Enhancements
- 3150: Moved TROTransportChannel.BeforeDispatch inside try/except block
- 2927: Adding "InnerList" property on TROArray descendant
- 2774: Make TROCustomSessionManager.CriticalSection public
- 2711: Add Help2 filters to all products that ship Help2 help
Fixes
- 3202: Problem with the Arrays sample
- 3163: fixed typo in the "Template not found" exception message
- 3158: Problem with destroying a PerClientClassFactory instance
- 3129: Memory Leak in uRODatasnapConnection.pas
- 3093: The RODL sample incorrectly generates test library
- 3025: Problem with CodeGen2 (C++)
- 3015: RO_*_D10 packages needs to have "Generate DCUs" option set
- 2993: Problem with RO/COM and inherited services
- 2943: updated InvalidServers for the DLL Server template
- 2928: Server Rodl should disable publishing WSDL
- 2882: memory leak when sending unsupported message type (bin->soap, etc)
- 2844: Sample changes for RO/Delphi 4.0.15; MasterServer moved to Common
- 2786: uROBinaryHelpers incorrectly works with 'variant array of variant' (vartype = $200C)
- 2723: .SaveToArray/LoadFromArray was generated inconsistently in *_intf.pas
- 2722: Service Builder incorrectly validates .RODL
- 2432: TROLocalServer was removed from the server list of unsuitable templates
- 2432: Fixed InvalidServers setting in templates
- 2432: Fixed typo in template description
- 2408: WSDL import problems with certain structs
- 2267: C++Builder Plugin: .H generators need to override GetDefaultFileExtension
- C++ Support should no longer be marked as "experimental" in setup
New in Version 4.0.15 (Build .541)
(Status: December 14, 2006)
Enhancements
- 2739: Trial-built applications now run outside of the IDE (but still show trial message)
- 2159: New "Arrays" sample
Fixes
- 2831: Used RODLs for Data Abstract would disappear in Service Builder
- 2830: Memory leak in uRODL
- 2772: Problem reading datetime in XML-RPC Message
- 2736: Memory leak in TROPerClientClassFactory_TimeoutThread
- 2698: Service Builder AV'ed on importing certain XML files
- 2696: Problems with XML-RPC Message
- 2674: Typo in Select Ancestor Type
- 2650: "The requested header was not found" error in WinInetHttpChannel
- 2647: Duplicate calls to OnSessionCreate event
- 2637: Super TCP Channel would create and free service multiple times
- 2630: SOAP Message didn't respect prefixes for record elements
- 2618: Memory leak in "xMethods" Sample
- 2612: Memory leak in "MegaDemo" Sample
- 2602: Combo Service could not be run as non-Admin user
- 2535: IDE needs to delete old/duplicate RODLFile.res
- 2446: MasterServer session timeouts did not work consistently
New in Version 4.0.13 (Build .521)
(Status: October 25, 2006)
Enhancements
- 2466: IROClassFactory should expose ClearPool method
- 2343: Improvements to ROXML's GetNodeAttribute
- 2323: Time-zone support in SOAP Message
- 2169: OnSessionCreated fires after registering session in list
- 1985: synchronized OnConnected/Disconnected events for the Super TCP Channel
- 1926: Event to be notified when MaxSession is reached
Fixes
- 2614: SuperTCPChannelChat Sample Client raises AV while closing
- 2585: AV in Service Builder
- 2556: Problems with DynamicRequest in RO/COM and Service Tester
- 2522: SOAP Message parsed DateTime milli-seconds wrongly
- 2519: Error generating RODL from imported TLB
- 2504: PostMessage didn't correctly processed DateTime values
- 2475: templates generated wring unit names for email channel
- 2467: AV in Event Repository
- 2466: Problems with Session timeouts in Master Server
- 2462: SOAP TargetUrls don't get reset on exception, in Intf code
- 2449: Problem talking to RO3 SOAP Server
- 2431: Service Discovery failed to get more then one response
- 2416: Problems with Super TCP Channel if server goes down
- 2410: Problems aborting asynchronous requests on the Super TCP Channel
- 2409: Super TCP Channel could AV when setting Active to false
- 2408: WSDL import problems with certain structs
- 2401: Bad C++ validation warning in Service Builder
- 2397: Fixed "New Version" form
- 2395: Blacklist the standard WSDL schema urls so they don't import
- 2390: TROCustomSessionManager makes inconsistent use of Critical Section
- 2374: When freeing TROLocalServer, TROLocalChannel should be notified
- 2330: Memory leak in Event Repository
- 2314: AV when closing Service Builder
- 2309: Fixed abstract method in DLL Channel
- 2196: AV in Service Tester
- 2195: Problem when loading a *.roTest file in Service Tester
- 2092: methodcall vs. methodrequest in XML-RPC Message
- 734: Problems consuming SOAP Server from .NET Remoting
- 708: Problems in multi-threaded server with DLL channel or Hydra
New in Version 4.0.11 (Build .509)
(Status: August 24, 2006)
Features
- 1729: Ship Synapse source and packages pre-built with setup
- 1554: IDE Awareness for C++Builder 2006 projects
- 1552: New CodeGen support for C++Builder in IDE and Service Builder
Enhancements
- 2210: RODL.exe now sets exit code on warning/error
- 2178: Make the Super TCP Channel.ThreadPool property public instead of published
- 2132: Added IntSetServerLocator in TROIndyHTTPChannel
- 1970: Made Super TCP Channel idle disconnect time configurable
- 1862: New SessionManager.BeforeDeleteSession event
Fixes
- 2319: uROMSXMLImpl incorrectly detected and didn't support MSXML4
- 2308: Improvements for error checking in DLL Channel
- 2306: Indy HTTP Channel doesn't set Port 80 when no port was specified in TargetUrl
- 2259: Synapse did not check result of HTTP dispatch call
- 2227: Random AVs in Super TCP Channel's TROPackageAck.RemoveFromList
- 2211: RODL.exe doesn't "flatten" RODL for .RES, as IDE does
- 2150: Async results on Super TCP Channel fail with encryption enabled
- 2133: MainProcessMessage should return "true" when Probing
- 2131: memory leak in Named Pipe Channel
- 2127: memory leak in Service Discovery sample
- 2116: memory leak in TROInMemoryEventRepository
- 2115: memory leak in TROThreadPool
- 2114: memory leak in Event Sinks
- 2112: shut-down AV in service discovery in certain scenarios
- 2102: Problems with HREFs in SOAP Message
- 2079: Super TCP Channel does not fire the OnException event
- 1902: Bad codegen for inherited event writers
- 1826: TROWebBrokerServer is missing Serve properties
New in Version 4.0.9 (Build .495)
(Status: June 30, 2006)
Enhancements
- 1947: TRODBSessionManager.OnConvertGUID event to allow shorter session IDs
- 1900: Ship the Service Discovery RODL.
- 1878: make session timeout interval configurable
- 1827: Expose Port property for UDP and Broadcast Channels
- 1813: StoreActive for Super TCP Channel
- 1810: Better overloads of (Un)registerEventHandlers
- 1791: Implement SynchronizeInvoke on event receiver
- 1780: Option to prefix enums or not
- 1772: Configurable reconnect timeout for Super TCP Channel
- 1749: Ship DataSnap_Async.pas file
- 1519: Have BinMessage detect encrypted messages and provide better error on mismatch
- 1512: Allow RODL validation from within RODL.exe
- 1489: Option to change the name of result fields in Service Builder
Fixes
- 1980: Wrong SOAP-ENC header in SOAP message
- 1951: SOAP compatibility with Java Axis Library
- 1931: Stream read error in Service Tester
- 1918: XML-RPC Message stream may not be empty for Read modes
- 1909: XML-RPC Message could raise "Not a string" exceptions
- 1907: TRORemoteService.GetServiceMethods raises EAccessViolation exception
- 1905: Problem with groups in Used RODL
- 1877: Warnings building a new project from template
- 1852: Super TCP Channel reconnect timeout shouldn't block outgoing requests
- 1870: Super TCP Channel doesn't properly reconnect after a long disconnect
- 1838: Bad Help URL in TRODataSnapModule generated code
- 1836: Super TCP Channel stops sending events to client after a few days
- 1822: TROSuperTcpChannel.SetActive does not check the previous active state
- 1821: TROSuperTcpServer + Hydra AutoUpdate = Socket error # 10053
- 1820: WSDL location is not always right, with new RO4 http paths
- 1814: TRODBSessionManager.ClearSessionsOnCreate/Destroy don't work as expected
- 1812: <MyArray>.Resize doesn't free lost elements
- 1797: Import of Amazon WSDL fails
- 1787: generated Async unit doesn't compile if descendent order is wrong
- 1779: ServiceName not set in TROEventReceiver
- 1775: Sending large packages over Super TCP Channel could timeout
- 1768: OnEnvelopeComplete event of a TROSoapMessage is not fired on server
- 1762: WinMessage Channel stream position problem
- 1758: Super TCP Channel errors in IDE when enabling ProbeServers property
- 1692: Kylix/FPC support for TEvent is broken when the timeout is set
- 1576: With Encryption on, a browser request for the RODL also returns encrypted data
- 1443: use default ancestor for Service Builder Impl generation
- 576: TROWinInetHTTPChannel works differently from IE
New in Version 4.0.7 (Build .475)
(Status: April 26, 2006)
Features
- 1550: Experimental support for C++Builder 2006 (library only)
- 1206: Design-time Login dialog for use in IDE
- 1007: Support for importing .PAS and .TLB files in Service Builder
Enhancements
- 1607: Speed improvements to Super TCP Channel
- 1544: Enhancements to Free Pascal (FPC) compatibility (unsupported)
- 1480: New TROEventReceiver.OnPollException event
- 1450: Allow "Ignore" when trying to regenerate read-only files
- 1439: Consider renaming RegisterClient method
- 1425: New project dialog should have drop-down box for folder name
- 1402: New OnConnected / OnDisconnected events of Super TCP Channel
- 1400: "File exists, overwrite?" dialog on new project needs "Yes to All" option
- 1388: Improved template handling to account for CVS or SubVersion folders in Templates directory
- 1357: Add MinSizeForCompression property to trigger compression in BinMessage
- 1353: Improved "Save As" defaults in Service Builder
- 1351: Enhance grouping in Service Builder by allowing drop on items
- 1328: Option to enumerate all sessions in a Session Manager
- 1266: Improvements to Intf unit generation to allow struct members with same name as struct itself
- 1008: Improve Documentation XSLT in Service Builder
- 665: New SendExceptionsAs500 property on HTTP Channels
Fixes
- 1604: Access Violation in Named Pipe server without Owner
- 1593: Cannot set KeepAlive on Indy servers in Indy 10
- 1586: Permission problems with Named Pipes
- 1561: Broadcast Channel fails under Delphi 6 / Indy 8
- 1548: Disable WinMessage channel as option in Service templates
- 1547: SOAP and XMLRPC trim string parameters
- 1546: RemObjects.inc could be missing from install depending on selected Indy options
- 1545: Super TCP Channel needs default Host value
- 1536: bad exception name: EROUnregisteredServeException
- 1516: Disallow Windows Message Channel for service-based template
- 1515: HTTP content type never set properly for SOAP exceptions
- 1494: Difference between "unassigned" and "null" for variants in SOAP message
- 1485: Super TCP Channel hangs IDE when closing Designer
- 1460: Cannot transfer "null" variants using SOAP message
- 1431: CodeGen should consistently escape enum values
- 1350: Groups should not re-open in Service Builder tree when changes are made to RODL
- 1247: Importing RODL loses grouping
- 1205: TRODynamicRequest parameter values not editable at design-time
- 279: Invalid WSDL generated if several services used same method name
New in Version 4.0.5 (Build .459)
(Status: March 24, 2006)
Enhancements
- 1450: "Ignore" dialog option when trying to regenerate read-only files
Fixes
- 1446: uROXmlRpcMessage.pas was missing from trial version
- 1429: Stream read error in Indy 10 TCP Server
- 1427: Service Builder welcome page revered to "3.0"
- 1426: Possible deadlock in Super TCP Channel
- 1414: Warnings in uADOLib.pas (and marked unit as deprecated)
- 1346: Warnings in uROThreadPool.pas in Delphi 2006
- 1334: Problem downloading license file when using proxy server
- 795: TROSOAPMessage.GetModuleInfo may cause problem with generated WSDL
- 557: xMethods and BabelFish samples were not working properly
New in Version 4.0.5 (Build .455)
(Status: March 17, 2006) - First Release of RemObjects SDK 4.0 for .NET
Features
- New TROLocalChannel and TROLocalServer and matching template
- New Super Channel and Super Server
- New XMLRPC Message
- New Server Info Page in HTTP Servers
- New RODL.exe command line utility
- OnLoginNeeded event for transparent login handling on the client side
- Full integration into Borland Developer Studio 2005 and 2006
Enhancements
- Allow use of SOAP in Service Tester
- Service Tester is now independent of Delphi 6 and Delphi 7
- Improved and streamlined New Project Wizard
- Performance improvements to TRONamedPipeChannel
- New Server Info Page in HTTP Servers
- New URLs to expose RODL and WSDL from HTTP servers
- 1335: Support for https://, ftp://, file:// links when importing from Service Builder
- 1314: Allow use of Super TCP Channel in Service Tester
- 1306: Option for IDE to generate files for used RODLs, as well
- 1227: Enable "Start Server" IDE menu even if client project is active
- 1259: Made CurrentLocator writable in TROTransportChannel
- 1120: Option to sort items alphabetically in Service Builder
- 1119: Option to show items in Service Builder tree view based on ancestry
- 1157: New IDE menu option to generate interface unit for asynchronous calls
- 1042: Allow use of RO SOAP Servers in Service Tester
- 1035: Delphi 6 "Hide Preprocessor Window" menu item not functional
- 1032: Option to disable SOAP type validation
- 874: Option to change timeout for TROWinInetHTTPChannel
Fixes
- 1396: BinSerializer.Read() should check number of read bytes
- 1367: Disable CLX template in Delphi 2005 and up (CLX is no longer supported in these versions)
- 1368: Better error from pooled class factory if pool is empty
- 1349: Service Builder loses UTF-8 encoding flag in RODL
- 1343: Hints compiling library in Delphi 2006
- 1324: UDP Servers fail, stream is not properly reset
- 1313: Service Tester shows no operations in drop down list
- 1304: Codegen for async unit doesn't consider class dependencies
- 1263: Problem with SOAP message's parameters order
- 1260: TROTransportChannel.Assign does not work properly
- 1252: Memory leak in Service Discovery sample
- 1249: Bug in TROSOAPMessage.GetModuleInfo
- 1242: SOAP problems with extended chars in strings
- 1236: RODL and WSDL import should allow for HTTP redirects
- 1235: WSDL import problems with .NET Remoting SOAP server
- 1217: Problem releasing Timer Thread in Event Manager
- 1210: Compatibility improvements with .NET SOAP servers
- 1171: Indy 9 related fixes in installer
- 1163: Fix for for ReadInt64 in SOAP Message's XmlSerializer
- 1142: Problem with Session samples
- 1141: Errors in RO/COM Sample
- 1140: "Chat" sample problem
- 1123: Grid scrolling problem in Service Builder
- 1082: Problems with read-only RODL files in Service Builder
- 1075: improved performance in NamedPipe channel and server
- 1066: WaitFor in TROThreadTimer did not work properly in Kylix 3
- 1035: "Hide Preprocessor Window" menu was non-functional in Delphi 6
- 1031: Usability issues launching uncompiled server from IDE
- 1022: Show templates in proper sub-folders of BDS' New Item dialog
- 996: TROIndyHTTPServer Keep-Alive support did not work with Indy 10
- 995: Component properties don't provide categories in Object Inspector
- 984: Find proper solution to add/update paths in installer without dupes
- 981: DBSessionManager Sample problem
- 966: Encryption problem with Indy TCP channel
- 915: Usage of TTimer on Kylix platform cause xll dependency
- 871: Memory leaks in RO/COM
- 770: SOAP message should have <?xml ...> envelope
- 663: Abandon changes generates errors in Service Builder
- 573: TROIndyUDPServer not working with Indy 10
- 572: Enum values documentation are not saved in Service Builder
- 558: Problems with Post message and string containing line breaks
- 549: Serializers streamed widestring as 8-bit string if it passed as variant
- 356: TTimer doesn't work in NT Service
- 345: Service Builder doesn't show latest types such as UTF8String
- 335: Custom service error handling problem on client side
- 297: Default value ThreadCacheSize of TROBPDXHTTPServer and TROBPDXTCPServer servers is 1000
- 255: "Save Copy As" is always disabled in Service Builder
- 118: CodeGen mistakes unit names with library name vs. RODL filename
- 69: Exception Ancestors mistakenly get verified as "invalid ancestor" in Service Builder
- Many additional fixes without bug database reference
