As a molecular modeler, one of the most frustrating challenges can be ensuring that all tools and extensions in your workflow function seamlessly with the software updates you rely on. Compatibility issues may bring your work to a halt, which is why understanding the rules governing software and extension compatibility is critical. SAMSON, the integrative molecular design platform, has a structured approach to compatibility that’s worth exploring to streamline your experience and avoid unnecessary disruptions.
How SAMSON Ensures Extension Compatibility
SAMSON Extensions are built using a Software Development Kit (SDK), which is tightly linked to SAMSON’s internal versioning system. To ensure everything works smoothly, SAMSON checks for compatibility between its current version and the SDK version associated with each extension during startup. But how does that work?
Semantic Versioning Rules in Action
SAMSON adheres to a semantic versioning policy, which uses a version number in the format major.minor.patch. This approach ensures that new features or bug fixes don’t break your workflow unintentionally. Compatibility is determined based on these rules:
- Major Version: If the major version numbers of SAMSON and the SDK don’t match, the extension is considered incompatible.
- Minor Version: The SDK’s minor version must be equal to or smaller than SAMSON’s minor version for compatibility. This ensures the extension doesn’t rely on features not available in the SAMSON version.
For example, if your SAMSON version is 1.7.8, extensions built with SDK versions 1.3.5 or 1.7.7 are compatible. However, an SDK version of 1.8.5 would not be compatible with SAMSON 1.7.8, as it might utilize newer functions not present in the SAMSON version you’re using.
A Real-Life Scenario
Assume you’re using SAMSON version 1.7.8 along with a SAMSON Extension built with SDK version 1.5.2. When you start SAMSON, it loads the extension because the SDK version is compatible. If a new version of the same extension—using SDK version 1.6.4—is released, SAMSON will automatically update the extension if your computer is connected to the Internet, ensuring you always have access to the latest features and fixes.
However, if a new SAMSON version 2.0.0 is released along with a corresponding extension version built with SDK 2.0.0, your older SAMSON version (1.7.8) won’t load this update. The extension will remain in its current compatible version (1.6.4) unless you update SAMSON.
Keeping Your Tools Up-to-Date
To maintain compatibility and access the latest features, it’s highly advisable to keep both SAMSON and your extensions updated. SAMSON includes an automatic update functionality that simplifies this process, reducing manual effort and ensuring you stay on the cutting edge of molecular modeling capabilities.
If you’re ever in doubt about the interplay of version compatibility, you can refer back to the detailed SAMSON documentation for clarification.
Conclusion
Understanding how SAMSON manages compatibility through semantic versioning offers you peace of mind and minimizes interruptions in your modeling projects. By keeping SAMSON updated, you ensure that you can always work with the latest innovations without unwanted surprises.
Learn more about SAMSON’s versioning and compatibility approach by visiting the original documentation at this link.
SAMSON and all SAMSON Extensions are free for non-commercial use. You can access and download them from SAMSON Connect.
