Skip to content

Versioning Policy (SemVer) ​

OffHeap strictly follows Semantic Versioning 2.0.0 (SemVer) for release versioning. Every release is represented in the format MAJOR.MINOR.PATCH (e.g., 0.3.1).


Pre-1.0.0 Rules (0.y.z) ​

While the project is in the initial development phase (0.y.z), the API is subject to refinement based on real-world usage and performance feedback.

To maintain transparency and prevent developer frustration, OffHeap adheres to the following conventions:

  • Breaking Changes (0.x.0): Breaking API changes, signature modifications, or significant behavior alterations will trigger a bump in the minor version (e.g., from 0.2.0 to 0.3.0).
  • Features & Optimizations (0.x.y): Backward-compatible new features, performance enhancements, and optimizations will bump the patch version (e.g., from 0.3.0 to 0.3.1).
  • Fixes & Releases (0.x.y): Bug fixes, packaging updates, and pipeline improvements also bump the patch version.

The 1.0.0 Production Milestone ​

Graduating to version 1.0.0 represents a strong guarantee of API stability, robustness, and suitability for mission-critical production environments.

IMPORTANT

The 1.0.0 Exit Criteria: OffHeap will not release version 1.0.0 until the framework has been successfully deployed and verified in a real, active production environment by someone other than the main creator and maintainer (Ryan Gustavo).

Why this rule exists? ​

  1. Real-world Validation: Synthetic benchmarks and isolated integration tests cannot replicate the chaotic nature of production environments (varying memory pressure, network spikes, diverse query workloads, and unique concurrency profiles).
  2. API Completeness: Real-world developers integrating the library in foreign systems will identify missing knobs, configuration gaps, or edge cases.
  3. No False Promises: A 1.0.0 version should represent a battle-tested caching solution, not just a complete feature list.

Help Us Reach 1.0.0! ​

If you are using OffHeap in your projects or are planning to deploy it to staging or production, please share your experience! We would love to hear from you:

  • Open a GitHub Discussion with your use case.
  • Report any anomalies, tail latency figures, or memory usage statistics.

Released under the MIT and Apache 2.0 Licenses.