Phone800.366.3472 SupportGet Support DocumentationDocumentation Resource CenterResource Center
search
close
Open Menu

Synergy/DE has evolved over the years. Expand the versions below to see what new changes were introduced.

Synergy/DE 10.3

Support for Windows 10

Windows 10 includes security enhancements, the return of the Start menu, and the ability to run on a broad set of devices. You can check out all the new Windows 10 features here.

Support for Visual Studio 2015

Visual Studio 2015’s new features offers improved productivity. Highlights include the Concord debugger engine, light bulbs, task list features, and new profiling tools. We recommend updating as soon as possible to take advantage of these features. You can read more about them here.

Synergy support for Android and iOS devices

You can now develop Synergy .NET applications to run on devices! Use Synergy DBL’s integration with Visual Studio and Xamarin tools to create apps that target Mono (a cross-platform, open-source implementation of Microsoft’s .NET Framework). Version 10.3 includes

  • An iOS Application project template (10.3.1a)
  • Two Android project templates: Android Application and Android Class Library
  • Support for device licensing
  • NuGet package distribution of Synergy runtime libraries for device development
  • Support for the Xamarin debugger

Experimental support for Mono on Linux is also available. (In the future we’ll add OS X support.)

Ability to perform change tracking functions in your application

A new ChangeTracking class lets you retrieve snapshot information, synchronize your files with a snapshot, and find out whether change tracking is enabled—all from within your application (without having to spawn a command line utility). You no longer have to deal with quirks of various operating system command interpreters; this feature puts you in complete control of your change tracking activities. (Windows, UNIX)

Optimized Where.In selections for the Select statement

Where.In selections are now optimized when an ISAM key field is specified, greatly improving performance and allowing for more efficient join functionality.

Connection recovery with xfServer

An xfServer client application can now automatically reconnect and recover context if its network connection is temporarily dropped. This will be especially useful with devices on wireless networks as connections can be unreliable. It also provides better WAN support. So now when your users move around the office or warehouse with their tablets or hand-held devices, and their connections bounce between different wireless network points, your application will auto-reconnect with xfServer as needed—without requiring any changes to your code. (Windows)

Ability to concatenate strings and (in Synergy .NET) concatenate strings with numbers or objects

You can concatenate System.String with another string or, in Synergy .NET, with a number or an object. The non-string operand is converted into a string, and the result of the expression is a string. You can append to the beginning or the end of the original string. String functions like this improve code readability and performance and provide a modern feature that programmers are used to seeing in other .NET languages.

Support for the conditional operator

A new ternary operator lets you define a conditional expression and have one result if the condition is true and another result if the condition is false. The syntax is <condition> ? <expression1> : <expression2>

NOROLLBACK file creation option

The NOROLLBACK option prohibits the rollback function when change tracking is enabled, helping you prevent accidentally reverting a file back to its original state (before a snapshot). The ctutl utility also has a new change tracking command option that prohibits rollbacks.

New SIZE_LIMIT and RECORD_LIMIT file creation options

SIZE_LIMIT and RECORD_LIMIT let you set the maximum number of megabytes that a data file is allowed to reach and the maximum number of active records allowed in a file. If a STORE or WRITE operation will cause the file to exceed these maximums, an error will be generated. This is especially useful for devices.

Workbench upgrade to SlickEdit 18

This new SlickEdit version provides Workbench users with improved speed and stability. The most notable improvement for developers is the draggable and dockable file tabs. You can drag a file out of the MDI into its own window or dock files next to each other.

Synergy .NET compiler enhancements for improved performance & compatibility

  • Ability to target the Synergy 10.1 runtime. Use the latest developer tools even if you’re not ready to upgrade the runtimes on all your deployment systems
  • Ability to set compile-time defines in the Project Designer
  • Ability to change a duplicate structure error to a warning for global structures and enumerations; useful for Interop project migration
  • Improved performance when using simple groups. Includes reduced JIT startup time
  • Support for .BXOR., .BNAND., and .BNOT. with enumerations
  • New compiler option to detect when a routine’s total stack data exceeds a specified number of bytes. (The default is 65k.) Helps with IIS and ASP.NET stack limitations
  • Support for default values for parameters for .NET types; allows optional parameters but with a default value
  • Support for collection initializers, which enable you to create collection objects and populate them. (For use with the Systems.Collections.IEnumerable interface.)
  • Support for Unicode string literals using .unicode (e.g., symbols)
  • Support for partial interfaces

Synergy DBL Integration for Visual Studio enhancements

  • Support for Visual Studio 2015 (Synergy/DE 10.3.1b)
  • Support for Visual Studio 2013 Update 4
  • Code converter improvements for new language features
    • Support for C# style “params” (trailing variable arguments)
    • Preprocessor directive support
  • Ability for users to create their own Synergy templates
  • Enhanced “show channels” debugger command now shows the channel number
  • Interop project type improvements:
    • Code generation is part of the build process
    • Wrappers are regenerated every time
    • Generated files are no longer checked into version control
    • Interop generation output now integrated with errors window
  • Support for targeting .NET Framework 4.5.2

Traditional Synergy DBL compiler enhancements

  • Support for String.Replace()
  • Support for READONLY STATIC class fields, STATIC classes, and simple properties
  • Support for AS to indicate the type of members in a collection; useful for unboxing
  • Support for property initializers, which enable you to instantiate an instance of a class and set public properties without assignment statements
  • Removed some restrictions for imports of namespaces for private class fields in imported classes

Synergy .NET runtime enhancements

  • Support for xfNetLink Synergy (RXSUBR)
  • Support for %DLL_CALL

Synergy DBMS (cross platform)

  • New ISAM key type, CTIMESTAMP, to indicate the creation time of a record
  • Support for records larger than 64K in ISAM files on .NET and 64-bit traditional Synergy
  • New ISCONFIG subroutine lets you modify the user-defined text in an ISAM file’s data header

Important fixes

  • (OpenVMS) Fixed a problem in which numerous connection requests from the same client to xfServer caused lost and dropped connections. IMPORTANT: The FREE_POOL must be high enough to handle the maximum number of concurrent incoming connections. This may require changing system parameter settings. [tr#35416]
  • (OpenVMS) When many xfServer clients attempted to connect to the same VMS server, it was possible for two clients to be assigned to the same server process consecutively, and then that server process was killed when it started to serve the second client. This has been fixed. [tr#35434]
  • (UNIX) Fixed the synsslx check for libcrypto.so for modern 64-bit Linux like Unbuntu; it was causing SSL failures. [tr#35168]
  • (Windows, UNIX) When storing records to a non-TBYTE ISAM file where the index file (.ism) reached the maximum 2 GB before the data file (.is1) and an $ERR_FILFUL error was generated, it was observed that after running isutl -v on the file, an Index error was generated, indicating an error in the index freelist and unreferenced index blocks. This has been fixed. [tr#35359]
  • Resolved an ISAM data corruption issue caused during file update with a non-TBYTE file that resulted in a file exhibiting a data file at or exceeding 4 GB (>=4294967296) in size. [tr#35179]
  • (Windows, UNIX) The parsing of URIs for HTTP functions no longer incorrectly strips the query from the URI when the URI does not contain a path. (Initially released in 10.1.1d.) [tr#35327]
  • (UNIX) Variables are now cleared as expected when running a pre-9.3 .dbr that uses INIT. (This was a problem in v9.3.1 through v10.1.1c. ). [tr#35199]
  • (UNIX) An “Internal ISAM error – File may be corrupt” error with the informational text “Unable to locate bucket” no longer occurs on a DELETE operation in very large variable-length records or compressed record files (greater than 4 GB). [tr#35123]
  • (UNIX) With previous version 10 releases, some ISAM files created with version 9.5.3b or earlier and configured with TBYTE could falsely exhibit file corruption. Running isutl -v on such a file reported “Bad reset PAGE offsets.” This has been fixed, and the -v option for isutl has been updated to report this situation and suggest using isutl -r to correct it. The fastest way to correct this condition is to patch your file to REV 6 using isutl -p. [tr#35181]
  • (UNIX) Running isutl -r or -v no longer fails with “I/O error: No disk space” (when plenty of disk space is available) on a non-TBYTE file when the index file is greater than 2,147,483,647. (A workaround to this is to delete the index file and re-index. If you can add TBYTE, do so now. Otherwise, a higher packing density may suffice.) [tr#35361]
  • (Windows, UNIX) The isutl utility no longer allows an index file to exceed 2,147,483,647 bytes when re-indexing a file that is not configured with TBYTE. It now fails with the error “Index or data exceeds maximum size” and a message indicating that only the data file (.is1) remains, and suggests re-indexing with the addition of TBYTE (-qfile=tbyte). [tr#35361]
  • (Windows, UNIX) The error $ERR_SIZLIMIT (rather than $ERR_FILTUL) is now generated when either part of an ISAM file (.ism or .is1) will exceed 2 GB when updating a file that was not configured with the TBYTE file option. [tr#35361]
  • 10.3.1 also includes numerous fixes for the .Synergy .NET compiler and Visual Studio integration. We recommend you recompile your Synergy .NET code with the 10.3.1 compiler targeting either the 10.1.1 or 10.3.1 runtime.

For a complete list of fixes, see the 10.3 release notes.

Platform changes

  • Support for Windows 10 (Synergy/DE 10.3.1b is the minimum version for Windows 10 support.)
  • Version 10.3 does not support the following platforms:
    • Windows XP
    • Windows Server 2003
    • HP Tru64 Unix
    • SCO OpenServer
  • Version 10.3 requires the following new minimum versions:
    • Solaris 10
    • AIX 6.1
    • HP-UX 11i v3
    • Linux compatibility 2010 based GCC 4.4 (Not all Linux distributions go back as far as 2010; see “UNIX requirements” in the Synergy/DE documentation.)
  • Synergy/DE on Windows now requires a processor with SSE2 instructions

Third-party product compatibility changes

  • New supported versions
    • Visual Studio 2015
    • SlickEdit 18 (with Workbench)
    • .NET Framework 4.5.2
  • New minimums
    • Visual Studio 2012 Update 4 (2010 is no longer supported.)
    • .NET Framework version 4.0 (or higher) is required to install Synergy/DE 10.3.
    • SQL Server 2008 R2 with Service Pack 4 (2005 and 2008 are no longer supported.)
  • Support for SQLServer 2014
  • VTX12_SQLNATIVE – SQL Server native Client (sqlncli) deprecated by Microsoft. The VTX12_SQLNATIVE driver now uses the “ODBC Driver 11 for SQL Server” driver. (If it is unable to use that, it uses SQL Server native Client 11.0.)

Other changes

  • Synergy/DE xfServer versions will be enforced from clients; upgrade your servers first.

Synergy/DE 10.1

For more detailed information, see Synergy/DE 10.1.

Repository

Change tracking

HTTP/HTTPS API enhancements

Support for Windows 8 and Server 2013

Synergy DBMS enhancements

Synergy .NET enhancements

Visual Studio 2012 support

Improvements to the C# to Synergy Code Converter

Synergy DBL enhancements

Compression in xf NetLink Synergy

Multi-mainline projects in Workbench

Enhanced UI Toolkit .NET support

TCP/IP License Manager (Windows)

Platform Changes

Synergy/DE 9.5.3

UI Toolkit

xf NetLink Java

Traditional Synergy

I/O Hooks

Synergy .NET

Visual Studio Integration

Synergy/DE 9.5.1

Workbench

xf Series

Connectivity Series

Synergy Language

Select class

Backup license server

Synergy .NET

Synergy/DE 9.3.1

Repository

UI Toolkit

Workbench

Synergy Windows printing API

Improved xf ServerPlus development

Connectivity Series

Language

Compiler/linker

Encryption

Select class

GRFA and optimistic concurrency

Gennet

Prototyping

Debugger

Windows installation

Synergy/DE 9.1.5

UI Toolkit

xf ODBC

Compiler/Linker

Runtime

Gennet

Synergy XML API