For molecular modelers working with SAMSON, ensuring the compatibility of SAMSON Extensions with different versions of the platform can sometimes be a concern. In this blog post, we’ll explore how SAMSON manages the compatibility of extensions, why it matters, and how you can make your workflow more seamless.
Understanding Compatibility in SAMSON
The versatile and integrative SAMSON platform uses a robust system to ensure that extensions and the platform itself function harmoniously. This is vital because SAMSON Extensions depend on specific versions of the Software Development Kit (SDK) to compile and run effectively within SAMSON.
When you start SAMSON, it automatically checks the version of its SDK against the version of the SDK used to build each installed SAMSON Extension. Extensions are only loaded if the versions are compatible according to strict semantic versioning rules.
The Core Compatibility Rules
Semantic versioning ensures clear expectations for users and developers. A version formatted as major.minor.patch dictates compatibility as follows:
- Major version numbers: Compatibility is guaranteed only when the major version of the SDK matches the major version of SAMSON.
- Minor version numbers: The minor version of the SDK must be smaller than or equal to the minor version of SAMSON.
For example, a SAMSON Extension built with SDK version 1.3.5 will be compatible with SAMSON version 1.7.8, but one built with SDK version 1.8.5 will not.
Why It Matters to Molecular Modelers
If your extension depends on a feature specific to a newer SDK version, while your SAMSON platform is not updated, the extension may fail to load or function properly. Conversely, an older extension built with an older SDK version will continue to work with an updated SAMSON installation, thanks to backward compatibility within the same major version.
To avoid frustrations, it’s highly recommended to update SAMSON regularly. This ensures that your software includes all the latest features, bug fixes, and compatibility improvements.
What About Automatic Updates?
Automatic updates simplify the process. If a compatible version of an extension is released on SAMSON Connect and an internet connection is available, SAMSON updates the extension automatically upon startup. However, extensions built with a newer SDK version than what your SAMSON platform supports will not be updated until SAMSON itself is updated to a compatible version.
This ensures stability and protects you from potential issues caused by incompatibilities.
Concluding Thoughts
The compatibility-checking mechanism of SAMSON is designed to provide a seamless user experience for molecular modelers while adhering to strict versioning policies. Regular updates to SAMSON are encouraged to keep your workflow smooth and error-free.
To dive deeper into the topic and understand the specifics, visit the official SAMSON documentation on versioning.
SAMSON and all SAMSON Extensions are free for non-commercial use. You can get SAMSON at this link.
