Ensuring Compatibility in SAMSON Extensions: What You Need to Know

For molecular modelers leveraging SAMSON, a common pain point is ensuring that SAMSON Extensions function seamlessly with the platform. If you’ve ever encountered compatibility issues between your extensions and SAMSON itself, this blog post explains how versioning works to minimize these problems and what you can do to keep your workflows smooth.

How SAMSON Handles Extension Compatibility

At its core, SAMSON ensures compatibility by comparing its own version number with the version number of the SDK used to build the SAMSON Extension. If they are deemed compatible, the extension is loaded successfully at startup. So, how does SAMSON decide that two versions are compatible?

According to SAMSON’s semantic versioning policy, compatibility is based on major and minor version numbers:

  • Major version numbers (e.g., majorSAMSON and majorSDK) must be identical.
  • Minor version numbers: The SDK’s minor version (minorSDK) must be smaller than or equal to SAMSON’s minor version number (minorSAMSON).

This means, for instance, that SDK versions 1.3.5 and 1.7.7 are compatible with SAMSON version 1.7.8. But if you attempt to use an SDK version 1.8.5, SAMSON 1.7.8 will not load it, as the SDK might rely on functionalities unavailable in that SAMSON release.

Practical Implications for Users

As a user, this policy means you must ensure that your SAMSON platform is updated to its latest version to maximize compatibility. SAMSON provides automatic updates for Extensions as long as an Internet connection is available. Let’s say you’re using SAMSON version 1.7.8 with an extension developed on SDK 1.5.2. This extension works smoothly because of compatibility within the versioning constraints mentioned earlier.

Now, imagine a newer version of the same extension is released, built with SDK 1.6.4. SAMSON will detect the new version and automatically update the extension at startup, ensuring you’re always using the most stable and improved release.

When Automatic Updates Don’t Work

The only time SAMSON won’t update an extension is if its SDK version conflicts with SAMSON’s own version. For example, if a developer releases a version of the extension built with SDK 2.0.0, SAMSON 1.7.8 won’t update the extension, as the major versions (1 vs 2) differ.

This highlights the importance of keeping both SAMSON and its extensions updated whenever new stable releases are available. Outdated versions of SAMSON may limit your ability to access the latest functionalities and improvements provided by developers.

Stay Updated and Make the Most of SAMSON

SAMSON’s ability to manage extension compatibility ensures a stable and efficient molecular modeling experience. However, you play a role in this by proactively keeping your SAMSON installation updated. Regular updates ensure new features, bug fixes, and compatibility with the latest SAMSON Extensions built with newer SDK versions.

To learn more about SAMSON’s versioning system and how it handles compatibility, visit the official documentation page.

Note: SAMSON and all SAMSON Extensions are free for non-commercial use.

Comments are closed.