Understanding SAMSON Extension Compatibility.

For molecular modelers working with SAMSON, ensuring compatibility between SAMSON Extensions and the SAMSON version installed is essential for a smooth workflow. Incompatibilities can result in frustration—extensions might not load or fail to function as expected. Understanding how compatibility is determined can significantly reduce such headaches.

How Compatibility Is Ensured

SAMSON Extensions are built using a specific version of the SAMSON Software Development Kit (SDK). At startup, the SAMSON platform checks the version of the SDK used to build each extension and compares it with its own version. This ensures that the extensions loaded are fully compatible with the installed version of SAMSON.

Compatibility is governed by semantic versioning, ensuring stable interactions between SAMSON and its extensions. Specifically, a version majorSDK.minorSDK.patchSDK of the SDK is compatible with a SAMSON version majorSAMSON.minorSAMSON.patchSAMSON if:

  • The major version numbers (majorSDK and majorSAMSON) are identical.
  • The minor version number of the SDK (minorSDK) is smaller than or equal to the minor version number of SAMSON (minorSAMSON).

Real-World Scenario

Let’s take a practical example. Assume you’re using SAMSON version 1.7.8. An existing SAMSON Extension built with SDK version 1.5.2 will load seamlessly because the major version (1) matches, and the SDK’s minor version (5) is smaller than SAMSON’s minor version (7).

Now, if a new version of the extension is released, built with SDK version 1.6.4, your SAMSON setup will automatically update to this version (if an Internet connection is available), as it remains compatible with the SAMSON 1.7.8 version. On the other hand, if an extension is built using SDK version 2.0.0, SAMSON 1.7.8 will no longer be able to load it, as the major version numbers differ (1 vs. 2). In this situation, upgrading your SAMSON version to match the SDK’s major version is essential.

Best Practices for Continuous Compatibility

  • Keep SAMSON updated: Updates often ensure compatibility with the latest extensions and unlock new features and fixes.
  • Leverage SAMSON’s automatic updates: With a stable Internet connection, SAMSON can automatically update extensions whenever a compatible version is published on SAMSON Connect.
  • Monitor SDK changes: Developers using the SDK should adhere closely to semantic versioning principles to avoid creating unexpected incompatibilities.

Conclusion

Compatibility management is a defining strength of SAMSON, prioritizing reliability in computational molecular design workflows. By understanding how SAMSON and its SDK versions interact, you can avoid disruptions and ensure your extensions function as expected.

To dive deeper into SAMSON’s versioning strategies, visit the full documentation: https://documentation.samson-connect.net/users/latest/versioning/

Note: SAMSON and all SAMSON Extensions are free for non-commercial use. Get SAMSON at https://www.samson-connect.net.

Comments are closed.