Version Compatibility Matrix
This document provides version compatibility information for TrustWeave SDK and its dependencies.
TrustWeave SDK Version
Current Version: 1.0.0-SNAPSHOT
Note: This is a snapshot version. Stable releases will follow semantic versioning (e.g.,
1.0.0,1.1.0, etc.).
Runtime Requirements
Java
| TrustWeave Version | Java Version | Status |
|---|---|---|
| 1.0.0-SNAPSHOT | 21+ | ✅ Required |
| Future | 21+ | ✅ Required |
Why Java 21?
- Java 21 provides required language features (records, pattern matching, etc.)
- Long-term support (LTS) release
- Required for Kotlin 2.2.0+ compatibility
Kotlin
| TrustWeave Version | Kotlin Version | Status |
|---|---|---|
| 1.0.0-SNAPSHOT | 2.2.21+ | ✅ Required |
| Future | 2.2.0+ | ✅ Required |
Why Kotlin 2.2.0+?
- Required for DSL builders and type-safe configuration
- Modern coroutine features
- Improved type inference
Build Tools
| Build Tool | Minimum Version | Status |
|---|---|---|
| Gradle | 8.5+ | ✅ Required |
| Maven | 3.8.0+ | ✅ Required |
Dependency Compatibility
Core Dependencies
| Dependency | Version | Purpose |
|---|---|---|
kotlinx-serialization-json |
1.6.0+ | JSON serialization |
kotlinx-coroutines-core |
1.7.3+ | Coroutines support |
kotlinx-datetime |
0.5.0+ | Date/time handling |
Optional Dependencies
| Dependency | Version | Purpose | Plugin |
|---|---|---|---|
| AWS SDK | 2.x | AWS KMS integration | org.trustweave.kms:aws |
| Azure SDK | Latest | Azure Key Vault integration | org.trustweave.kms:azure |
| Google Cloud SDK | Latest | Google Cloud KMS integration | org.trustweave.kms:google |
Module Compatibility
All TrustWeave modules share the same version number for consistency:
1
2
3
4
5
6
org.trustweave:distribution-all:1.0.0-SNAPSHOT
org.trustweave:trustweave-trust:1.0.0-SNAPSHOT
org.trustweave:trustweave-did:1.0.0-SNAPSHOT
org.trustweave:trustweave-kms:1.0.0-SNAPSHOT
org.trustweave:trustweave-anchor:1.0.0-SNAPSHOT
org.trustweave:testkit:1.0.0-SNAPSHOT
Recommendation: Use the same version for all TrustWeave modules to avoid compatibility issues.
Platform Compatibility
Operating Systems
| Platform | Status | Notes |
|---|---|---|
| Linux | ✅ Supported | Primary development platform |
| macOS | ✅ Supported | Full support |
| Windows | ✅ Supported | Full support |
JVM Versions
| JVM | Status | Notes |
|---|---|---|
| OpenJDK 21+ | ✅ Supported | Recommended |
| Oracle JDK 21+ | ✅ Supported | Full support |
| Eclipse Temurin 21+ | ✅ Supported | Recommended |
| Amazon Corretto 21+ | ✅ Supported | Full support |
Breaking Changes
Version History
| Version | Status | Breaking Changes |
|---|---|---|
| 1.0.0-SNAPSHOT | Current | None (initial version) |
| Future 1.0.0 | Planned | None expected |
| Future 1.1.0 | Planned | TBD |
Note: Breaking changes will be documented in Migration Guides.
Compatibility Recommendations
For Production Use
- Use stable releases (avoid
-SNAPSHOTversions in production) - Pin dependency versions in your build configuration
- Test upgrades in staging before production
- Review migration guides before upgrading major versions
For Development
- Use latest snapshot for testing new features
- Follow semantic versioning when upgrading
- Check release notes for changes
- Update dependencies regularly
Version Checking
Gradle
1
2
3
4
5
6
dependencies {
implementation("org.trustweave:distribution-all:1.0.0-SNAPSHOT")
}
// Check version at runtime
val version = TrustWeave::class.java.getPackage()?.implementationVersion
Maven
1
2
3
4
5
<dependency>
<groupId>org.trustweave</groupId>
<artifactId>distribution-all</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
Troubleshooting
Version Conflicts
If you encounter version conflicts:
- Check dependency tree:
1
./gradlew dependencies
- Resolve conflicts:
1 2 3 4 5
configurations.all { resolutionStrategy { force("org.trustweave:trustweave-common:1.0.0-SNAPSHOT") } }
- Use BOM (when available):
1 2 3 4 5
dependencies { implementation(platform("org.trustweave:trustweave-bom:1.0.0-SNAPSHOT")) implementation("org.trustweave:trustweave-trust") implementation("org.trustweave:trustweave-did") }
Upgrade Path
When upgrading TrustWeave versions:
- Review release notes for changes
- Check migration guides for breaking changes
- Update dependencies gradually
- Test thoroughly before production deployment
Related Documentation
- Installation Guide - Setup instructions
- Migration Guides - Upgrade instructions
- Module Overview - Module dependencies
Last Updated: January 2025
TrustWeave Version: 1.0.0-SNAPSHOT