Releases
Release Notes π Application Release Cycle π Overview Our application follows a structured release cycle to ensure stability, reliability, and continuous improvement. The release cycle is designed to balance feature updates with the need for maintaining a stable production environment. Below is an overview of the different stages and timelines for each release. π¦ Release Types
π Major Releases Description: Major releases introduce significant new features, architectural changes, or major updates to existing functionality. Frequency: Every 2 weeks. Impact: May include breaking changes and require a migration plan.
β¨ Minor Releases Description: Minor releases include small feature additions and improvements, as well as backwards-compatible changes. Frequency: Every 2 weeks. Impact: Backwards-compatible, minimal disruption to existing systems.
π§ Patch Releases Description: Patch releases are for bug fixes, security updates, and small, incremental changes that do not affect the overall application behavior. Frequency: As needed. Impact: No breaking changes, minor improvements and fixes. π οΈ Release Stages
π» Development Environment: Local developer machines. Focus: Initial development and testing of new features. Versioning: Not versioned publicly. Key Activities: Code writing, unit tests, integration tests.
π§ͺ Staging Environment: Staging server, mirrors production environment. Focus: Pre-release testing of new features and bug fixes. Versioning: Pre-release version (e.g., 2.0.0-beta). Key Activities: QA testing, regression testing, performance evaluation.
π Production Environment: Live production servers. Focus: Stable release to end-users. Versioning: Official version (e.g., 2.0.0). Key Activities: Final deployment, monitoring, and support. π Timeline and Process βοΈ Feature Freeze: Two weeks before a scheduled release, no new features are added. Only bug fixes and critical changes are allowed. π Testing and QA: During the feature freeze period, rigorous testing is done in the staging environment. π Release Candidate (RC): Once testing is complete, a release candidate is prepared and deployed to staging for final verification. π’ Deployment: Upon approval, the release is deployed to the production environment.
Last updated