One of the challenges molecular modelers occasionally face when working with SAMSON is encountering an extension that simply won’t load. It’s frustrating when an Extension you rely on—or have just installed—doesn’t appear in your workspace. But there’s usually a very clear reason behind this, and it has to do with version compatibility.
This post explains the logic behind how SAMSON checks extension compatibility at startup, so you can avoid common pitfalls and ensure your workspace always includes the tools you need.
Understanding SDK Compatibility
Each SAMSON Extension is built with a specific version of the SAMSON Software Development Kit (SDK). When SAMSON starts, it compares the SDK version used to build each Extension with its own version. Extensions are only loaded if their SDK version is compatible with your SAMSON version.
Compatibility is defined by a few simple rules:
- The major SDK version must match the major SAMSON version.
- The SDK’s minor version must be less than or equal to SAMSON’s minor version.
Here’s a practical example:
- Your SAMSON version:
1.7.8 - An Extension built with SDK version:
1.5.2
✅ This Extension will load fine because 1 == 1 (same major version), and 5 ≤ 7 (minor version is smaller).
However, if the Extension was built with SDK version 1.8.5:
- Your SAMSON version:
1.7.8 - Extension SDK version:
1.8.5
❌ This Extension will not load. Even though the major version matches, the minor SDK version (8) is larger than SAMSON’s (7).
Why This Matters
This system protects your environment from instability. Imagine an Extension asks SAMSON to use a function that wasn’t added until version 1.8, but you’re still on 1.7.8. Instead of crashing or throwing cryptic errors, SAMSON simply skips loading the incompatible Extension.
What You Can Do
- Keep SAMSON updated: The easiest solution is enabling or using automatic updates.
- Check Extension SDK versions: If you’re installing via SAMSON Connect, check the SDK version listed or note when the Extension was last updated.
- Track major version changes: When SAMSON moves from, say, version 1.x to 2.x, Extensions built with the new SDK will no longer load unless you update your SAMSON installation.
Automatic Updates Help
Fortunately, SAMSON automatically updates Extensions to compatible versions when possible. If a newer version of your Extension is available—and still uses a compatible SDK—SAMSON will fetch and load it on startup. This helps ensure you always benefit from recent improvements without breaking compatibility.
If you’re waiting for a new feature offered in an Extension that requires a more recent SDK, you’ll need to update SAMSON as well. Otherwise, the existing compatible version will continue to be used.
To sum up, version compatibility in SAMSON isn’t a bug—it’s a feature. It ensures system stability and helps you avoid hours of debugging when things don’t “just work.” Stay updated, and you’ll avoid the vast majority of these issues.
For more details, visit the official documentation: https://documentation.samson-connect.net/users/latest/versioning/
SAMSON and all SAMSON Extensions are free for non-commercial use. You can download SAMSON at https://www.samson-connect.net.
