Phone800.366.3472 SupportGet Support DocumentationDocumentation Resource CenterResource Center
search
close
Open Menu
Synergy/DE Version 11

Security. Resilience. Performance.

Synergy/DE 11 delivers a higher level of application security, more resilient Synergy ISAM files, and improved performance. It also includes many new language and Visual Studio integration enhancements for a better developer experience. It’s filled with features to enhance developer productivity and enable developers to create better applications.

Synergy/DE 11 also introduces and uses REV11 licensing, a revision to Synergy/DE’s licensing system that makes managing Synergy/DE product keys much easier.

See below for information about Synergy/DE 11 features and requirements. Also see the Synergy/DE 11 documentation and the REV11 licensing page.

Synergy/DE 11 Features

Simplified Licensing

  • A revision to Synergy/DE’s licensing system, REV11 licensing, makes your processes for managing Synergy/DE product keys much easier. Once REV11 licensing is on a machine, Synergy/DE License Manager on that system will communicate with the Synergy License Web Service, detect when new product keys are available, and automatically download and install them. You won’t have to touch the product keys on that machine again.
  • You do not need to maintain product keys for multiple Synergy/DE versions on your license server. REV11 licensing includes a “fuzzy matching” feature that enables you to run other versions of Synergy/DE with version 11 keys.
  • REV11 licensing is used with Synergy/DE 11, and it’s also used with Synergy/DE 9.3 – 10.3 systems via the REV11 licensing upgrade package. See the REV11 licensing page for more REV11 licensing information.

Enhanced Security

  • Support for OpenSSL 1.1.1, which will be an industry requirement when OpenSSL stops supporting lower versions in December 2019. Synergy/DE 11 is a required security update for applications that mandate security patch compliance and use OpenSSL on Windows. See OpenSSL.org’s release strategy page for information about their version support.
  • Ability for xfServer and xfServerPlus services to run as non-root/admin accounts via new “run as user” security mode on Windows and “effective user” on Unix.
  • Enhanced encryption security for the HTTP API, xfServer, xfServerPlus, and SQL Connection.
  • Enforcement of a higher TLS level. Version 11 defaults to TLS 1.2. TLS 1.0 is no longer supported.

Better Resiliency

  • Auto-recovery of resilient ISAM files on open. When ISAM files tagged RESILIENT are opened, they’re checked to determine if they’re out of sync. If they are, the open will automatically recover the file without user interaction (using a default xfServer running on port 2330).
  • Resilient ISAM file options. A resilient ISAM file creation option enables you to detect file corruption and recover from it. A new isutl option will automatically detect and repair just those files that are corrupt.
  • Ability to rebuild in-use ISAM files (using coordinated locking) with new isutl option. Exclusive access to your files is no longer required.
  • Improved ISAM file reliability and performance enable you to move closer to 24×7 computing.
  • Significant isutl performance improvements. Rebuilds are up to 10 times faster. (In testing, the rebuild time for one 20-GB file went from 40 minutes down to 5 minutes!)

Traditional Synergy Enhancements

  • Full support for ternary operators, including the null conditional operator and null coalesce operator, removing prior restrictions.
  • Support for new string methods (a subset of the .NET String class), including IsNullOrEmpty, Trim, Remove, Insert, Concat, and a subset of the .NET stringbuilder class.
  • Support for extension methods.
  • Improved .NET char type compatibility, for use in data files. The compiler now creates storage for two bytes (the second being a 0), so using char in a record is compatible with .NET. Note that char characters outside the ISO18559-1 range (0-255) are not supported in traditional Synergy.
  • Support for ^NAMEOF() function, which returns the name of a variable, type, or member. Includes the .toUpper() and .toLower() compile-time methods.
  • Improved support for high-DPI (4K) monitors in UI Toolkit and Synergy DBL’s low-level windowing routines. In addition to better sizing of elements and other enhancements, this support also changes the look of your applications’ windows to the default style used in Windows 7 and up. (Prior to Synergy/DE 11, the Windows XP window style was used.) 

Visual Studio Integration Features

  • Significant performance improvements in Synergy DBL Integration with Visual Studio (SDI), including enhancements to Find All References and Solution Explorer search.
  • Order-independent, multi-schema repository load in Visual Studio. You no longer need to order your schema files before loading them into your repository.
  • Support for Visual Studio 2019 and the latest VS 2019 updates.
  • Support for parallel builds for Synergy projects.
  • Vastly improved large-solution load performance. A real-world, 196-project solution saw load times decrease from more than 8 minutes to about 12 seconds. And a 2000-project solution decreased from infinity to 2 minutes 15 seconds.

Better Performance

  • Performance improvements to Synergy .NET runtime. Includes significant reduction in garbage collection for long-running processes.
  • Optimized code generation for improved runtime performance.
    • When strings are added (for example, string = stringvar + “1”), the compiler uses the String.Concat method, which generates fewer string temps. (Traditional and .NET) 
    • When records are included in classes and fields are unused, the compiler creates fewer objects. (.NET) 
  • Runtime enhancements for improved compute performance. (.NET and Traditional on Windows) 
  • The Windows runtime was compiled with Spectre/Meltdown changes that Microsoft introduced in 2018.

Installation Enhancements

  • WiX installations for a better installation experience. (Windows)
  • True 64-bit Synergy installers. The 64-bit Synergy installers, for use on 64-bit-only Windows servers, are now purely 64-bit and contain no 32-bit components. Applies to Synergy/DE 64-bit, Synergy/DE Client 64-bit, and xfNetLink .NET 64-bit.

Other Features

  • Ability to match on a specified numeric value (of any type or size) when doing a READ or FIND on a numeric key in an ISAM file. Also, joins on numeric fields can now occur by value instead of by type and size, for example, On(Table1.d5 .eq. Table2.i4).
  • New Like method for the Select class, which enables you to perform wildcard searches to better filter your data.
  • HTTP API enhancements:
    • Support for HEAD and PATCH functions. PATCH is like PUT, except it’s used when only part of a resource is updated, for example a person’s last name. HEAD enables you to find out what a GET would return if you were to call it. HEAD only returns headers (without the response body you would get with a GET).
    • Support for chunked encoding. The content can be broken up into chunks, each of which is prefixed by its size in bytes. This feature is useful when a large amount of data is being returned and the total size of the response may not be known until the request has been fully processed.
  • Support for base64 encoding and decoding via a new Synergex.SynergyDE.DataEncoding class with ToBase64, FromBase64, ToBase64URL, and FromBase64URL methods.
  • Improved support for high-DPI (4K) monitors in UI Toolkit and Synergy DBL’s low-level windowing routines. In addition to better sizing of elements and other enhancements, this support also changes the look of your applications’ windows to the default style used in Windows 7 and up. (Prior to Synergy/DE 11, the Windows XP window style was used.)
  • Improved vtxnetd logging.
  • (Windows) New Synergy Configuration Program option (and rsynd command line option) to export a configuration file you can use to initialize your xfServer/xfServerPlus services. This feature is useful when setting up multiple systems and when re-initializing systems after uninstalling Synergy/DE.

Synergy/DE Platforms and Requirements

  • Synergy/DE 11 is currently available for the following platforms: Windows, Linux, IBM AIX, and OpenVMS Integrity, and OpenVMS Alpha. It will be released for HP-UX Itanium and Oracle Solaris in the near future.
  • Synergy/DE 11 requires REV11 licensing. Synergy/DE 9.3 – 10.3 systems can also use it via the REV11 licensing upgrade package. REV11 licensing is recommended but optional for Synergy/DE 9.3 – 10.3 deployment licenses (for production systems). As of November 1, 2019, all Synergy/DE DevPartner (developer) licenses issued or renewed will require REV11 licensing.
  • SDI updates for Synergy/DE 10.3+ will be provided via Synergy/DE version 11 builds, which require the REV11 licensing upgrade package. SDI 11.0.3 was the last SDI release published on the 10.3.3g downloads page and the last SDI version supported with pre-REV11 licensing.
  • PSDE and PSW keys enable products differently. A PSDE11 key enables SDI and Synergy/DE’s “core tools” (compiler, Repository, etc.), while a PSW11 key enables only the Workbench editor. When you upgrade to Synergy/DE 11, if you use Workbench, you’ll receive a PSDE11 key and a PSW11 key. If you don’t use Workbench, you’ll only receive a PSDE11 key. This change was made to improve product usage tracking and should not affect your use of your Synergy/DE products.
  • Visual Studio 2015 is not supported.
  • Windows 7 and Windows Server 2008 R2 are not supported.
  • The minimum Oracle Solaris version supported is Solaris 11.
  • The minimum Synergy ISAM revision supported is revision 4.
  • Synergy/DE 11 is a required security update for applications that mandate security patch compliance and use OpenSSL on Windows. Version 11 supports OpenSSL 1.1.1, which, after December 2019, will be the only OpenSSL version getting security patches. See OpenSSL.org’s release strategy page for information about their version support.
  • TLS 1.2 is now the default protocol, and TLS 1.0 is not supported. If you specify the TLS level for HTTP API or SQL Connection,or the security compliance level (SCL) for xfServer or xfServerPlus, you may need to change the value you specify.
  • Synergy/DE 9.3.1 is the minimum upgrade version. The Synergy/DE 11 installation does not support upgrades from versions lower than 9.3.1 (because we cannot ensure that upgrading from these older versions will be successful). If you try to upgrade to Synergy/DE 11 on a system with an earlier version, the Synergy/DE 11 installation will tell you to uninstall your current version and then install Synergy/DE 11. If you’re using a Synergy/DE version prior to 9.3.1, we recommend that you first upgrade to Synergy/DE 10.3.3g, and then upgrade to Synergy/DE 11.
  • For Synergy/DE Client machines, a new C/C++ runtime version may be required for Windows 8. Synergy/DE 11 on Windows was built with a newer version of the C/C++ runtime, which requires machines running Synergy/DE 11 to also have that newer C/C++ runtime. Windows machines higher than Windows 8 already have the correct C/C++ version. When you install Synergy/DE 11 on Windows 8, the installation will update the C/C++ runtime if needed. But if you have an existing Synergy/DE Client installation on Windows 8, and you upgrade your server to Synergy/DE 11, you may need to manually update the C/C++ runtime on the Synergy/DE Client machine (or upgrade your Synergy/DE Client). To download the C/C++ runtime, go to Microsoft’s Visual Studio downloads page, scroll to the bottom and click Other Tools and Frameworks, then download the Microsoft Visual C++ Redistributable for Visual Studio 2019.
  • If you have .NET Core projects in Visual Studio, when you install Synergy/DE 11, the compiler, runtime, and other tools associated with those projects won’t change until you explicitly upgrade those projects to Synergy/DE 11.
  • New WiX installations will affect your product installations if you use Synergy/DE’s command line interface. If you execute the Synergy/DE installation from within your product’s installation, you may need to update your installation.