For molecular modelers leveraging SAMSON, the integrative molecular design platform, ensuring the compatibility of SAMSON Extensions is key to maintaining a smooth workflow. If you’ve ever run into issues where an extension won’t load or function as expected, understanding SAMSON’s compatibility rules can save you time and frustration.
How SAMSON Ensures Extension Compatibility
SAMSON Extensions depend on the SDK version they were built with. When SAMSON starts, it compares its version with the SDK version of each extension. Only compatible extensions are loaded. But what exactly does “compatible” mean?
As part of SAMSON’s adherence to semantic versioning, compatibility is defined in the following way:
- The major version number (
major) of both SAMSON and the SDK used to build the extension must be identical. - The minor version number (
minor) of the SDK must be smaller than or equal to the minor version number of SAMSON.
For example, an SDK version of 1.5.2 is compatible with SAMSON version 1.7.8 because the major version is the same, and the minor version of the SDK (1.5) is smaller than that of SAMSON (1.7).
An Example of Incompatibility
Let’s say you’re using SAMSON version 1.7.8, but an extension was built with SDK version 1.8.5. Even though both versions share the same major version number (1), the extension cannot be loaded because the minor version of the SDK (1.8) is greater than the minor version of SAMSON (1.7). This rule prevents potential errors caused by using functions in the extension that SAMSON hasn’t yet implemented.
Automatic Updates: A Lifesaver
If a compatible version of an extension is available on SAMSON Connect, SAMSON will automatically update the extension at startup, as long as you have an Internet connection. Consider this scenario:
- Your SAMSON version is 1.7.8.
- An installed extension was built with SDK version 1.5.2 and works perfectly.
- A new version of the extension, built with SDK version 1.6.4, is released.
In this case, SAMSON will fetch and install the updated extension during startup because SDK 1.6.4 is within the compatible range of SAMSON version 1.7.8. No extra steps are needed from you to keep your tools up-to-date!
When Compatibility Isn’t Enough
In cases where SAMSON itself receives a major version update (e.g., from 1.x to 2.x) and an extension doesn’t yet support the new version, SAMSON will not update or load the extension until it’s specifically rebuilt for the new major version. This ensures that your molecular modeling work remains stable and error-free.
To minimize disruptions, it’s always a good idea to keep your SAMSON installation up-to-date through automatic updates. Doing so ensures compatibility with the latest features and bug fixes provided by both SAMSON and extension developers.
Conclusion
Understanding SAMSON’s compatibility rules can streamline your scientific workflow while reducing downtime caused by incompatible extensions. To learn more about SAMSON’s versioning and how it handles compatibility, visit the official documentation. Stay updated to ensure your tools consistently work as you expect.
Note: SAMSON and all SAMSON Extensions are free for non-commercial use. You can download SAMSON at SAMSON Connect.
