close
Open Menu
Synergy/DE 11 Beta

Simplified licensing, enhanced security and resiliency, and an even better developer experience.

NEW! Beta update now available (Windows). Download v11.0.2.

Synergy/DE 11 has many exciting new features for Synergy developers. Learn about the features below, and download the Windows v11 beta release to try them out. Also, be sure to review the version 11 requirements.

Make sure your applications work with Synergy/DE 11. You can run your current applications with the Synergy/DE 11 runtime—you don’t need to recompile. We strongly encourage you to test your application with the Synergy/DE 11 runtime now to ensure that your upgrade to Synergy/DE 11 will go smoothly.

For documentation on the v11 beta features, go to our Synergy/DE documentation, and click “11.0.2 (Beta)” in the dropdown.

For assistance with the Synergy/DE 11 beta, contact Synergy/DE Developer Support.

 

Synergy/DE 11 Features

Simplified Licensing

  • The new 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.
  • See this FAQ for more REV11 licensing information.

Enhanced Security

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

Better Resiliency

  • 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!)
  • Ability to rebuild in-use ISAM files (using coordinated locking) with new isutl option. Exclusive access to your files is no longer required. (11.0.2)
  • (In an upcoming Synergy/DE 11 beta release) An ISAM “resilient” option and auto-recovery of resilient ISAM files when rsynd service starts up.

Traditional Synergy in Visual Studio Enhancements

  • Full support for ternary operators, including the null conditional operator and null coalesce operator, removing prior restrictions. Use -qrntcompat=11010100 or higher for this feature.
  • Support for new string methods (a subset of the .NET String class), including IsNullOrEmpty, Trim, Remove, Insert, Concat, and more.
  • Support for extension methods.
  • Improved Synergy support for the .NET char type. The compiler now creates a space of 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.

Other Visual Studio Integration Features

  • 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.
  • Support for Visual Studio 2019 version 16.1, including support for new project open filters. (Also see Microsoft’s Visual Studio 2019 announcement.) (11.0.2)
  • Significantly enhanced Find All References command.
  • Support for parallel builds for Synergy projects. (11.0.2).
  • Improved vtxnetd logging. (11.0.2)

Better Performance

  • Optimized code generation for improved runtime performance.
    • When you add strings (for example, string = stringvar + “1”), the compiler now uses the String.Concat method, which generates fewer string temps. Use ‑qrntcompat=11010100 or higher to get this improved code generation.
    • In .NET, when records are included in classes and fields are unused, the compiler creates fewer unused objects.
  • Runtime enhancements for improved performance and to mitigate the Spectre/Meltdown changes that Microsoft introduced in 2018. (Windows)

Installation Enhancements

  • WiX installations for a better installation experience. (Windows)
  • True 64-bit Synergy installers. The 64-bit Synergy installers are now purely 64-bit and contain no 32-bit components. For use on 64-bit-only Windows servers. 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). (11.0.2)
  • Ability to use the Windows system accounts “NT Authority\LocalService” and “NT Authority\NetworkService” as the xfServer or xfServerPlus accounts. (Windows) (11.0.2)
  • 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 ^NAMEOF() function, which returns the name of a variable, type, or member. Includes the .toUpper() and .toLower() compile-time methods.
  • Support for base64 encoding and decoding via a new Synergex.SynergyDE.DataEncoding class with ToBase64, FromBase64, ToBase64URL, and FromBase64URL methods.
  • Synergy .NET base class improvements so you can use assemblies that include them in Synergy projects. Includes byref locals, byref returns, byref readonly returns, byref structures, and readonly structures.
  • 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.)
  • (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.
  • (In an upcoming Synergy/DE 11 beta release) Order-independent, multi-schema repository load in Visual Studio.
  • (In an upcoming Synergy/DE 11 beta release) Subset of the stringbuilder class in the traditional Synergy runtime.
 

Synergy/DE 11 Requirements and Other Changes

Prepare for the following Synergy/DE 11 requirements. Let us know if you have any questions.

  • Visual Studio 2015 is not supported.
  • Windows 7 and Windows Server 2008 R2 are not supported.
  • Synergy/DE 11 is required for applications that use OpenSSL. Version 11 supports OpenSSL 1.1.1. Later this year, OpenSSL will stop supporting versions prior to 1.1.1. 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 are using a Synergy/DE version prior to 9.3.1, we recommend that you update to the current Synergy/DE version (10.3.3g) now, so that you can update to Synergy/DE 11 when it is available.
  • 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 .
  • 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.