One of the common pain points for molecular modelers is ensuring the compatibility of various extensions with the platform they use. Extensions often provide critical functionality, but version mismatches between the platform and its associated extensions or SDK can lead to frustration and wasted time. SAMSON offers a structured solution to streamline compatibility and avoid such issues, ensuring a smoother experience for users.
How SAMSON Handles Extension Compatibility
SAMSON uses a robust approach based on semantic versioning to determine whether an installed extension is compatible with the platform. It compares the version of the SAMSON Software Development Kit (SDK) used to build the extension with the platform’s current version. Let’s take a closer look at the mechanism:
- Major version compatibility: For an extension to be compatible, the major version number of the platform and the SDK must be identical. For example, SDK version 1.5.2 is compatible with SAMSON version 1.7.8 because their major version numbers match.
- Minor version compatibility: The minor version number of the SDK used to build the extension must be smaller than or equal to the minor version of SAMSON. For instance, SDK versions 1.3.5 to 1.7.7 would work with SAMSON 1.7.8, but SDK version 1.8.5 would not.
This ensures that extensions do not attempt to call functions that may not exist in an older version of SAMSON.
Automatic Updates Simplify Life
To further minimize manual intervention, SAMSON includes an automatic updates feature for extensions. When a compatible new version of an extension appears on SAMSON Connect, and an internet connection is available, the platform performs the update seamlessly. For example, if you are running SAMSON 1.7.8 and an updated version of an extension built with SDK 1.6.4 is available, SAMSON automatically upgrades the extension during startup.
At the same time, if a newer major version of SAMSON is released (e.g., 2.0.0), SAMSON won’t update extensions built with the newer SDK until you upgrade your platform version to match. This prevents compatibility issues and ensures platform stability.
Best Practices for Molecular Modelers
For a smooth experience when working with SAMSON and its extensions, it’s generally advisable to:
- Regularly update SAMSON to the latest version using its automatic update functionality. This ensures access to the latest features, extensions, and bug fixes while maintaining compatibility.
- Understand the SDK version requirements of the extensions you rely on, especially if you’re managing custom or critical extensions.
The SAMSON compatibility system not only prevents frustrating compatibility issues but also offers peace of mind knowing that your tools will work seamlessly as you switch between projects.
To dive deeper into SAMSON’s versioning and compatibility policies, check out the official documentation at https://documentation.samson-connect.net/users/latest/versioning/.
SAMSON and all SAMSON Extensions are free for non-commercial use. Visit SAMSON Connect to download the platform today!
