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

Synergex Blog


Announcing SDI 2022.03.1110

By Steve Ives, Posted on March 31, 2022 at 12:00 pm

We are pleased to announce that a new version of Synergy DBL Integration for Visual Studio (SDI), version 2022.03.1110 is available for download from the Resource Center and is recommended for use by all Synergy developers. This is a quality improvement release, and as always, we encourage you to review these changes listed in the release notes.

The Synergy/DE tools included in this version of SDI (dbl.exe, dblproto.exe, dblibr.exe, dblink.exe, dbl2xml.exe, and rpsutl.exe) are from Synergy/DE version 12.2.1.1000.


Announcing SDI 2022.03.1080

By Steve Ives, Posted on March 11, 2022 at 5:18 pm

We are pleased to announce that a new version of Synergy DBL Integration for Visual Studio (SDI) version 2022.03.1080 is available for download from the Resource Center and is recommended for use by all Synergy developers. This is a quality improvement release, and as always, we encourage you to review these changes listed in the release notes.

The Synergy/DE tools included in this version of SDI (dbl.exe, dblproto.exe, dblibr.exe, dblink.exe, dbl2xml.exe, and rpsutl.exe) are from Synergy/DE version 12.2.1.1000.


Announcing SDI 2022.02.1048

By Steve Ives, Posted on February 17, 2022 at 4:26 pm

We are pleased to announce that a new version of Synergy DBL Integration for Visual Studio (SDI) version 2022.02.1048 is available for download from the Resource Center and is recommended for use by all Synergy developers.

SDI now has a project template called Synergy Script; it creates a project configured to manage UI Toolkit Window Script (.wsc) files (the source code for a UI Toolkit Window Library) and automates the process of compiling the script(s) to create a Window library. Please note that you must also use Synergy/DE 12.0.1.3275 or higher to use this feature.

Several customers with UI Toolkit applications were involved in the design and testing of this new project type, and we would like to take this opportunity to thank them for their time and their commitment to helping us ensure that the new feature meets customer needs.

This release also includes quality improvements, and as always, we encourage you to review these changes listed in the release notes.

The Synergy/DE tools included in this version of SDI (dbl.exe, dblproto.exe, dblibr.exe, dblink.exe, dbl2xml.exe, and rpsutl.exe) are from Synergy/DE version 12.2.1.1000.


Announcing Synergy 12.0.1.3275

By Steve Ives, Posted on at 3:44 pm

We are pleased to announce a new Synergy/DE feature release, version 12.0.1.3275, which contains a complete implementation of all new features, changes, and improvements that will soon be released as Synergy/DE 12.1 LTS. This will be the final feature release in the 12.0 series, and we strongly encourage you to take advantage of the opportunity to test your applications with the new version prior to the upcoming LTS release.

Feature releases are similar to previous Synergex releases, i.e., they contain features and fixes, they go through our extensive and rigorous testing procedures, and they’re suitable for use in all situations. LTS releases are a new type of release to which we will only add quality and security improvements and no new features. For more general information about these types of releases, see our Release Strategy page.

Synergy .NET Support for .NET 6

As announced almost two years ago, the primary focus of Synergy 12 is to add support for .NET 6 (formerly known as .NET Core) as an alternative to .NET Framework in all the places where Synergy and .NET meet, including:

  • Building and deploying Synergy .NET applications with .NET 6
  • Using the .NET Assembly API to embed and execute .NET 6 code from traditional Synergy
  • The introduction of a new xfNetLink .NET client built with .NET Standard 2.0, and including a new object pooling mechanism (COM+ is not available in .NET 6)
  • Making all of the ancillary libraries (XML API, SQL Connection API, Repository API, etc.) available as NuGet packages

One thing that is not possible with Synergy .NET in .NET 6 is creating Windows desktop applications (Windows Forms and WPF). This is because Microsoft has decided to prevent third-party Visual Studio integrators from accessing the visual design surfaces for those environments.

As is always the case, we want all Synergy developers to test their applications with this release, but in particular, we are encouraging developers who use Synergy .NET with .NET Framework to try out their code in a .NET 6 environment as soon as possible; we are eager to receive your feedback on your experiences in that specific area.

Linux License Forwarding

Another feature in Synergy 12 is the ability to use TCP/IP licensing for Linux systems when subscription licenses are used. On new systems where licensing has not been configured, a new question during the installation provides the option to enter the name of a Windows license server, and when you do so, the Linux system will connect to that server for access to product keys.

When using a network license server, a local license server (synd) process is still present, but rather than maintaining a local license database file, it communicates with the license server to allocate licenses. Linux systems configured for network licensing access the same product keys that Windows clients use, so for this configuration, you will order Windows licenses for a new Linux system.

There are several advantages to using network-based licensing on Linux systems. It simplifies license management and enables shared concurrent-use licensing across multiple Windows and/or Linux systems and/or VMs. It is also an excellent solution for developers, who can now use the license server on their development systems to operate any number of Linux and/or Windows systems and/or VMs, without having to license each system individually.

And finally, this enhancement also removes a significant block that previously prevented Synergy applications from running in containers. For example, it is now possible to deploy Synergy applications in Docker containers and managed by a Kubernetes cluster. This opens up many new possibilities for Synergy applications, including the ability to deploy Synergy applications in the Public Cloud.

Encryption Enhancements

Another area of change in Synergy 12 is that on Windows, we no longer use OpenSSL but instead use the Microsoft Secure Channel APIs that are part of the Windows operating system. As a result, you no longer have to download and deploy OpenSSL and no longer need to create and provide “CA Files” to use the HTTP API securely.

Related to this, but affecting all platforms except for OpenVMS, we now validate certificates for authenticity, revocation, and expiration whenever they are used to establish secure connections. In most scenarios, this did not previously happen.

IMPORTANT: THIS CHANGE COULD BREAK YOUR ENVIRONMENT!

When enabling encryption for xfServer or xfServerPlus, or when enabling encryption on private Web servers accessed with the HTTP API, developers frequently use “self-signed” certificates. Unfortunately, these certificates were not validated in most cases, so some systems may likely be operating with invalid (untrusted, revoked, or expired) certificates. If a Synergy 12 upgrade is applied to such a system, the services with invalid certificates will fail to start.

If you use any cryptographic certificates in your Synergy environment, we recommend reviewing them before you update to Synergy 12 to ensure that they are from a trusted source, have not been revoked, and have not expired.

To minimize the potential impact of this change, we added a new -invcertOK command-line option to the rsynd utility and a corresponding “Allow startup with invalid PEM file certificate” check box to both of the xfServer and xfServerPlus configuration dialogs in the Synergy Configuration Program.

On Windows, it is no longer necessary to maintain your certificates in PEM files, making it easier to manage those certificates. With xfServer and xfServerPlus, a new syntax is available, allowing you to identify the certificate to be used directly from the Windows Certificate Store. And when using the HTTP API, a new “cert_store” keyword can be used in place of a “CA file,” causing the Windows Trusted Root Certification Authorities store to be used for certificate validation. Please refer to the Synergy 12.0 documentation for additional information.

Also, on Windows, the SQL Connection API no longer uses OpenSSL for data packet encryption; it also now uses Microsoft Secure Channel instead.

Other Notable Changes

  • On Windows, Unix, and Linux, we have added two new functions called %create_server_connection and %destroy_server_connection that can be used to create and terminate a connection to xfServer. The connection can then be used with subsequent OPEN statements via a new SERVERCONNECTION OPEN statement qualifier. This means that applications can now connect concurrently to multiple xfServer instances.
  • We have added a new define SYN_BUILDNUMBER which provides access to the build number of the compiler at compile time
  • We have added a limited GroupBy class for use with Select statements to provide a subset of a SQL “GROUP BY” clause functionality. We plan to add more SQL-like functionality in future releases.
  • In .NET, we have added GRFA support for READ, READS, WRITE, and WRITES statements when using stream, sequential, relative, and block files.
  • We now provide limited support for Global I/O hooks on OpenVMS and have added support for the %DATETIME_TO_I8 and %DATETIME_FROM_I8 routines already available elsewhere.
  • We have improved the isutl utility, improving re-index performance, particularly when processing very large files.
  • On Windows, the Device Licensing tools now support .NET and .NET Core, and .NET Framework.
  • In Workbench, the DPI scaling now adheres to newer Windows gdiScaling, resulting in an improved experience on high resolution and high DPI monitors.
  • And also in Workbench, we have added 17 as a selectable target version for JAR files in Java Component Projects.
  • The Synergy .NET compiler now supports multi-dimensional arrays of boxed value types.

What About .NET Support on Linux?

In addition to supporting the .NET 6 environment on Windows, we will soon introduce support for running Synergy .NET code in .NET 6 on Linux systems. This capability will not be present in the first 12.1 LTS release but will be introduced in a subsequent update.

This change is particularly important for Linux developers using Harmony Core services, as they will then be able to host their Harmony Core services on the same Linux systems that host their applications code and data, no longer requiring an intermediate Windows server to host the Harmony Core services.

Quality Improvements

In addition to the many new features and enhancements mentioned above, this release also includes quality improvements across all products, and we encourage you to refer to the release notes for your products for complete and detailed information. The release notes can be accessed online from the Feature Release Downloads page.

Windows 11 and Windows Server 2022

Please note that Windows 11 and Windows Server 2022 included some changes to screen painting code at a low level in the operating system, and these changes impacted screen painting by Synergy Windows and UI Toolkit applications on those platforms. We quickly resolved the issue, making some changes in the Synergy runtime. This fix was initially released in Synergy 11.1.1i in November 2021 and is also included in this release. Therefore, if you run any Synergy applications on Windows that use Synergy Windows or UI Toolkit, you need to upgrade to at least 11.1.1i or any later release to run successfully on Windows 11 or Windows Server 2022.

Availability

This release is available for the following platforms and can be downloaded from the Synergex Resource Center:


CodeGen 5.8.1 Now Available

By Steve Ives, Posted on February 2, 2022 at 3:31 pm

We are pleased to announce the availability of the first CodeGen release of 2022, version 5.8.1. As always, you can download the new version from our GitHub Releases page and view the documentation at https://codegen.synergex.com.

The enhancements included in this release are:

  • We added the ability to define the minimum version of CodeGen required by your environment by setting the environment variable CODEGEN_MIN_VERSION.
  • We added support for generating sample data (JSON formatted) for structure parameters when using the <PARAMETER_SAMPLE_DATA> parameter loop expansion token.
  • We added a new method loop expansion token <METHOD_RETURN_SAMPLE_DATA>.
  • We corrected an issue that prevented the -checkversion and other related operations from operating correctly.
  • We altered the <INTERFACE_NAME> token to support all case variations.
  • We changed the output of the parameter loop expansion token <PARAM_TSTYPE> to be consistent with the documentation by emitting structure names in camelCase rather than PascalCase.
  • We added a new mechanism for dealing with literal key segment values requiring trailing spaces to be maintained as part of the literal value. This change can alter the output of the <SEGMENT_LITVAL> and <LITERAL_SEGMENT_VALUE> expansion tokens.

This version of CodeGen was built with Synergy/DE 12.0.1.3272 and requires a minimum of version 10.1.1 to operate.


Announcing SDI 2022.01.1003

By Steve Ives, Posted on January 11, 2022 at 2:46 pm

We are pleased to announce that a new version of Synergy DBL Integration for Visual Studio (SDI) version 2022.01.1003 is available for download from the Resource Center and is recommended for use by all Synergy developers. This is a quality improvement release, and as always, we encourage you to review these changes listed in the release notes.

The Synergy/DE tools included in this version of SDI (dbl.exe, dblproto.exe, dblibr.exe, dblink.exe, dbl2xml.exe, and rpsutl.exe) are from Synergy/DE version 12.0.1.3275.


Announcing SDI 2021.12.3567

By Steve Ives, Posted on December 14, 2021 at 4:03 pm

We are pleased to announce that a new version of Synergy DBL Integration for Visual Studio (SDI) version 2021.12.3567 is available for download from the Resource Center and is recommended for use by all Synergy developers. The primary reason for this release is to ensure compatibility with the version 12 Synergy .NET runtime and accompanying libraries built to target .NET Standard 2.0.

SDI now enforces a minimum .NET Framework version of 4.7.2 for Synergy .NET projects. When opening a solution, SDI will automatically upgrade any Synergy .NET projects that target older Framework versions, altering them to target 4.7.2. This may impact your ability to build if you have non-Synergy projects that reference Synergy .NET projects and target a lower Framework version. If you do experience build problems, check the warnings produced by your Visual Studio build for details on .NET Framework targeting issues.

As always, the new release also includes a range of quality improvements, and we encourage you to review these changes listed in the release notes.

The Synergy/DE tools included in this version of SDI (dbl.exe, dblproto.exe, dblibr.exe, dblink.exe, dbl2xml.exe, and rpsutl.exe) are from Synergy/DE version 12.0.1.3274.


Announcing Synergy/DE 11.1.1i

By Steve Ives, Posted on November 22, 2021 at 2:48 pm

Synergex is pleased to announce the immediate availability of Synergy/DE 11.1.1i on Windows, Linux, IBM AIX, Oracle Solaris, and OpenVMS. Synergy/DE 11.1.1i is a quality release that includes a wide range of improvements across most of the Synergy product line, and we strongly encourage all Synergy developers to review the release notes (available in the Synergy Resource Center) for detailed information about everything that changed.

Synergy 11.1.1i is the first version to formally support the Windows 11 and Windows Server 2022 operating systems. In some cases, earlier versions of Synergy might run successfully on a new version of Windows, but in this instance, that may not be the case for some applications and system configurations. It appears that Microsoft made some low-level changes in the Windows 11 and Windows Server 2022 operating systems that negatively impacted the way that various UI controls and backgrounds are painted in some UI Toolkit applications running in some video configurations. This issue resulted in poorly rendered UI for affected applications. It is currently unclear what scenarios cause this issue to manifest; it may be related to certain high-DPI configurations. We have addressed this issue with a change to the DBL runtime in 11.1.1i and strongly recommend that all deployments to Windows 11 and Windows Server 2022 systems be with 11.1.1i. Note that this issue also affects the current 12.0.1.3272 feature release, and the fix will be included in an upcoming feature release in that series.

As we continually enhance the isutl utility for improved performance and better recoverability in system crash scenarios, we recommend that all customers using Synergy DBMS download the latest version of the Synergy DBMS Utilities package, regardless of the version of Synergy that you are currently using.

Synergy/DE 11.1.1i is available for download now.


Announcing SDI 2021.11.3540

By Steve Ives, Posted on November 18, 2021 at 9:49 am

We are pleased to announce that a new version of Synergy DBL Integration for Visual Studio (SDI) version 2021.11.3540 is available for download from the resource center, and is recommended for use by all Synergy developers.

This is primarily a compatibility release that formally supports the recently released Visual Studio 2022, and continues to support Visual Studio 2019. In addition, SDI supports both the Build Tools environments of both the 2022 and 2019 versions. The release also includes several quality improvements; as usual, please refer to the release notes for additional information.

We recommend that Synergy developers consider upgrading to Visual Studio 2022, which is the first 64-bit version of the product; the higher memory availability that results from using the 64-bit architecture yields noticeable benefits in several areas, not least of which is the improved speed at which projects load when opening a solution.

The Synergy/DE tools included in this version of SDI (dbl.exe, dblproto.exe, dblibr.exe, dblink.exe, dbl2xml.exe, and rpsutl.exe) are from Synergy/DE version 12.0.1.3272.


Announcing SDI 2021.09.3450

By Steve Ives, Posted on September 23, 2021 at 6:08 pm

We are pleased to announce that a new version of Synergy DBL Integration for Visual Studio (SDI) is available and recommended for use by all Synergy developers.

As with the recent SDE release, you will notice that we have adopted a new version numbering scheme for SDI, which now uses a year.month.build# format. This change emphasizes that SDI is on a separate development timeline than SDE and that regardless of the SDE version you deploy your application with, we recommend always using the latest version of SDI, in conjunction with runtime version targeting if necessary.

IMPORTANT: In this document and in other places, the term .NET refers to Microsoft .NET 5 and higher, while the term .NET Framework refers to the original .NET Framework product through its final 4.8 version. The term .NET Core refers to the interim product which culminated with a final 3.1 release.

Installation

We improved the SDI installer so that the files deployed are compatible with Build Tools for Visual Studio 2019. This makes it easier to set up build systems supporting Synergy project builds without requiring the Visual Studio IDE.

We also added validation to the installer to ensure that both 32-bit and 64-bit Synergy/DE (Professional Series Development Environment) are installed before SDI is installed.

Synergy .NET Compiler

We added support for INITONLY properties. We added a new keyword, INITONLY, that generates an init accessor and a get accessor. If a property is INITONLY, the value of the field cannot be changed once it is created. This feature is available only when targeting .NET Core or .NET.

We added support for covariant return types. A method within an inheritance hierarchy can now be overridden with a return type that is a subtype of the return type of the virtual method being overridden. This is known as a covariant return type and can be used to avoid casting between types, which would otherwise be necessary. This can also apply to the return types of read-only properties.

We added support for default interface methods. Interface methods and properties can now have default implementations, making them similar to abstract base classes but with the added possibility of multiple inheritance. A class that implements an interface containing default implementations does not have access to those methods and properties defined for the interface unless that class instance is cast to a variable of the exact interface type.

We added support for nullable regions via a new .NULLABLE compiler directive. When used with the enable argument (i.e., “.NULLABLE enable”), this marks the start of a nullable region. When used with disable (“.NULLABLE disable”), it marks the end of a nullable region. In a nullable region, a level 3 warning error is generated if a potentially null variable, field, etc., is assigned to a non-null variable. For example, a level 3 warning will be generated if a method return value that could possibly be null is assigned to a non-null variable.

We added support for GetEnumerator extension methods. A collection that does not inherit from IEnumerable or IEnumerable<T> can now be used in a FOREACH loop if it has an extension method named GetEnumerator() that returns an IEnumerator. These extension methods can have different overloads and can be defined for an interface. Only the overload with exactly one parameter will be chosen by the FOREACH loop. That first parameter must also have the correct type (the same as the class representing the collection).

We added a new compile-time define SYN_BUILDNUMBER that can be used to access the build number of the compiler at compile time. This is also available in the traditional Synergy compiler.

Color Coding

SDI now supports syntax colorization (color coding for keywords, types, etc.) for repository schema files. By default, SDI treats files with the following extensions as repository schema files and applies this color coding to these files: .rps, .scm, .schema, .sdl, and .sch, but other file extensions can be configured.

We added support for the new INITONLY auto property, which is now treated as a keyword when it is in a property definition.

IntelliSense

We added IntelliSense support for the new .NULLABLE enable/disable compiler directives, and IntelliSense now supports the null forgive operator (!.) and the null conditional operator (?.)

Project System

Synergy .NET Core projects created with earlier versions can now be configured to target .NET 5 and .NET 6, and the SDI build, IntelliSense, and property page components now support the Synergy 12.0 Runtime and compilers.

Unit Tests

SDI now supports loading and running unit tests for Synergy .NET Core projects in the Test Explorer window, and we have added a new “Unit Test (.NET Core)” project template.

There is a known issue caused by a problem with a Microsoft component that means it is not possible to mix Synergy .NET Framework and Synergy .NET Core unit test projects in the same solution. More information can be found in the release notes.

Visual Studio Support

This version of SDI supports Visual Studio 2019 (version 16.1 or higher is recommended) with the “.NET desktop development” workload, and, as was announced previously, Visual Studio 2017 is no longer supported.

And while this version does provide Synergy capabilities in the Visual Studio 2022 Preview release, we are not yet ready to announce support for that environment. We are still in the process of testing with the Visual Studio 2022 preview versions, and there are known issues with these versions.

If you do use SDI with 2022, do let us know if you discover any issues. Note that upcoming preview versions may require SDI updates to continue functioning. At this time, please do not use Visual Studio 2022 for production code.

For more information on SDI requirements, please refer to https://www.synergex.com/synergy-dbl-integration.

Quality Improvements

As usual, in addition to the new features and enhancements detailed here, this release also includes various quality improvements. As always, please refer to the release notes for complete information.


Announcing Synergy 12.0

By Steve Ives, Posted on September 10, 2021 at 2:48 pm

For the last several months the Synergy development team has been building out the features and functionality for the next version of Synergy, including the not-insignificant task of adding support for Microsoft .NET (in addition to .NET Framework) throughout the product. We are now ready to start sharing some of that work with you.

Some of you may have noticed something slightly unusual in the title of this announcement; the version number includes an even number! The complete version number of the release is 12.0.1.3272, which is also somewhat different from previous releases. We have implemented a new release strategy involving two types of releases: Long-Term Support (LTS) Releases and Feature Releases. You can find more information about that on the Synergex website.

Synergy 12.0 is a feature release, providing early access to some of the features and enhancements that will be part of the Synergy 12.1 LTS release later this year.

IMPORTANT: In this document and in other places, the term .NET refers to Microsoft .NET 5 and higher, while the term .NET Framework refers to the original .NET Framework product through its final 4.8 version. The term .NET Core refers to the interim product which culminated with a final 3.1 release.

Primary Focus of this Release

As previously announced, the primary focus of our current development is to add support for Microsoft .NET, and in some cases .NET Core, in all the places in Synergy where .NET Framework is currently supported. Some of these changes are being shipped for the first time in this release, while others will follow in subsequent 12.0 feature releases. Not all of the included changes are related to .NET; there are changes throughout the product set, as detailed below.

New Features and Enhancements

This section presents information about new features and enhancements included in this release:

.NET Support for Synergy APIs and Utilities

Several Synergy libraries and tools are now available as NuGet packages and provide support for .NET:

Library                     NuGet Package Name
Gennet Utility              Synergex.SynergyDE.gennet
Repository API Library      Synergex.SynergyDE.ddlib
UI Toolkit Library          Synergex.SynergyDE.tklib
XML API Library             Synergex.SynergyDE.synxml
xfNetLink .NET Library      Synergex.SynergyDE.xfnlnet

xfNetLink .NET

In addition to the Windows installer package, the xfNetLink .NET library is also now distributed as a NuGet package. The NuGet version of the library is built with .NET Standard 2.0 and so is usable from .NET Framework 4.7.2 and higher, .NET Core 3.1, and .NET 5 and higher environments.

The gencs utility now generates a C# project file that you can use with Visual Studio, MSBuild, or the dotnet build utility to build a client assembly. Note also that gencs no longer creates a strong-name key file by default; if you rely on this feature, you must explicitly specify a key file via the gencs -s option.

In .NET Framework applications, configuration settings were usually set in configuration files, but this is not supported with .NET Core or .NET applications. To address this, we have added several new environment variables that can be used to specify configuration settings in all environments. Refer to the release notes and documentation for a list of the new environment variables.

The COM+ pooling mechanism supported with .NET Framework is not available for .NET Core or .NET applications. As an alternative, we provide a pooling mechanism that can be implemented within your application, similar to the way that pooling worked with xfNetLink Java. For additional information refer to the Microsoft documentation for ObjectPool and use the BlockingPooledObjectPolicy class that we provide in an assembly within the NuGet package.

Synergy .NET assembly API

We added support for using the Synergy .NET assembly API in .NET Core and .NET environments, in addition to the current .NET Framework support.

The gennet40 utility continues to produce code for .NET Framework, and in addition, a new gennet utility is available from NuGet as a .NET global tool (Synergex.SynergyDE.gennet). This utility produces code for the version of .NET Core or .NET in which it is running.

Synergy Runtime Enhancements

We have added platform support for Windows 11 and Windows Server 2022 and new identifiers to allow for conditional compilation based on these new platforms.

The Synergy windowing API is now available in .NET environments.

On Windows, the data encryption routines (DATA_ENCRYPT, DATA_DECRYPT, and DATA_SALTIV) now use the Windows “Cryptography API: Next Generation” (CNG) instead of OpenSSL.

Related to our version numbering scheme changes, XCALL VERSN and %VERSN now have an optional second parameter that returns the Synergy build number.

On Linux, Synergy no longer has a dependency on the libtinfo.so.5 libraries.

Synergy DBMS Utilities

Continuing with our recent theme of improving performance when accessing ISAM files, or undertaking routine file maintenance or recovery operations, more enhancements have been made to the isutl utility that can result in performance improvements in some cases, particularly when processing very large files. Refer to the release notes for additional information.

License Manager

Linux systems can now be optionally configured to forward licensing requests to a Synergy license server on a Windows system, using TCP/IP communication. This is only supported when the license server hosts subscription licenses, and note that Linux system(s) will share the same pool of license keys available to Windows clients. Amongst several benefits is the simplification of Synergy deployment on Linux to virtualized or containerized environments, including deployment in cloud-based scenarios.

If you wish to implement IP-based licensing with existing Linux systems, you will need to work with Synergex Customer Service, as they will need to consolidate any existing Linux licenses into Windows licenses, and you will have to reset and reconfigure licensing on your Linux systems.

We have improved license server operation on UNIX and Linux systems to simplify running the license server under a non-root user account. Specifically, if file permissions prevent the license file from being written to the /usr/lib directory, it will now be written to /var/synergy instead. Additionally, if the license file is in /var/synergy, the location of the license server log file will default to the same location.

Quality Improvements

As usual, in addition to the new features and enhancements detailed here, Synergy 12.0 includes quality improvements throughout the product set. Again, refer to the release notes for complete information.

Documentation and Downloads

Documentation for feature releases will be available online only at https://www.synergex.com/docs. This website will always default to displaying the documentation for the current LTS release, but until Synergy 12.1 is released, the current default is the 11.1 documentation. To view the updated documentation for the 12.0 release, be sure to select “12.0 (feature release)” from the version dropdown.

In addition, the release notes that document everything that changed in this release can be viewed in the product downloads area of the Synergex Resource Center. Similar to the documentation, the downloads area defaults to displaying the latest LTS release, and currently defaults to displaying the 11.1 downloads. Click on the prominent red “Feature Release” button to view the downloads and release notes for the feature release.

What About SDI?

Synergy DBL Integration for Visual Studio now follows a separate development timeline and release cycle, and releases may not coincide with SDE. The SDI team has been hard at work, and you can expect an SDI release that supports Visual Studio 2019 and the upcoming Visual Studio 2022 very soon.


Announcing Synergy/DE 11.1.1h

By Steve Ives, Posted on July 19, 2021 at 9:49 am

Synergex is pleased to announce the immediate availability of Synergy/DE 11.1.1h on all platforms. A quality release that includes a wide range of improvements across the entire Synergy product line, and we strongly encourage all Synergy developers to review the release notes for detailed information about everything that changed.

If you are one of the many developers using Synergy DBL Integration for Visual Studio (SDI), please note that this will be the final release that supports Visual Studio 2017. From the next release, SDI will support Visual Studio 2019 as well as the upcoming Visual Studio 2022.

As we continually enhance the isutl utility for improved performance and better recoverability in system crash scenarios, we recommend that all customers using Synergy DBMS download the latest version of the Synergy DBMS Utilities package, regardless of the version of Synergy that you are currently using.

And finally, we want to point out an important bug fix that we applied to xfServer in this release: “On Windows and UNIX/Linux, a pre-version 11.1.1 client connecting to an 11.1.1 through 11.1.1g encrypted xfServer caused the connection to hang on certain functions, such as ISSTS, CLEAR, and STORE. This has been fixed in this release.”

Synergy/DE 11.1.1h is available for download in the Resource Center now.


CodeGen 5.7.3 Released

By Steve Ives, Posted on July 9, 2021 at 6:47 pm

There’s a new version of CodeGen out there, so if you’re using it, here’s what’s changed in this version:

  • We added a new special structure expression token <STRUCTURE_HAS_FIELD_name> that allows you to detect the presence or absence of a named field within the structure.
  • We improved the logic used when processing unique key loops and unique alternate key loops and made a slight change to the way that the unique alternate key loops operate. Previously the loop would not compare alternate key segments with the primary key, but now it does. So the loop now processes any alternate keys that do not have identical key segments to the primary key or any previous alternate keys.
  • We fixed a problem with the implementation of the -pa command line option that would cause CodeGen to fail when used with an input file containing multiple structures.
  • We fixed a problem with the implementation of the -tweaks option which could result in a null reference exception in some rare circumstances.
  • We reviewed and updated all sample templates that ship with CodeGen to ensure they use the latest capabilities such as taking advantage of complex expressions to simplify template complexity resulting from nested expressions.
  • This version of CodeGen was built with Synergy/DE 11.1.1g and requires a minimum of version 10.1.1 to operate.

As always, this new release is backward compatible with earlier releases, so we recommend that everyone download the new version as soon as possible.


Updated Visual Studio Development Tools

By Steve Ives, Posted on March 29, 2021 at 10:44 am

Synergex is pleased to announce the immediate availability of a new release of the Synergy DBL Integration for Visual Studio, Version 11.1.1g-3045.

As always, this latest release contains improvements across the board, but in particular, the focus was placed on these specific areas:

  • Improving the development experience in both the editing and debugging of .NET Core code.
  • Improvements in working with Repository projects in various scenarios.

Some of the improvements in this release were actually in the Synergy .NET Compiler, so in addition to updating the SDI installation, developers working on .NET Core projects (including any Harmony Core projects) should upgrade the version of the Synergex.SynergyDE.Build NuGet package used in the projects to version 11.1.1070.3045 also.

We encourage everyone undertaking any type of Synergy development in Visual Studio to upgrade to this new release as soon as possible. And remember, if you are not ready to upgrade the runtime versions on your production systems yet, you can use runtime version targeting to give you access to the latest-and-greatest development tools while continuing to support older runtime installations.

Head on over to the Resource Center Downloads page to download the new release now.


CodeGen 5.6.9 Released

By Steve Ives, Posted on March 11, 2021 at 8:10 pm

We are pleased to announce another release of CodeGen, once again including some significant advances in the technology. We recommend that all developers using CodeGen, and especially developers working with Harmony Core, should upgrade to this latest version as soon as possible. This new version includes these changes and enhancements:


Recent Posts Categories Tag Cloud Archives