Are you using Bazel in your projects? Or considering adopting it? When choosing a build tool, understanding the version support policy is crucial. For large-scale projects especially, knowing how long you’ll receive stable support is essential for planning.

This guide provides a comprehensive look at the version support policy for Bazel, Google’s powerful build system, including detailed EOS/EOL (End of Support/End of Life) schedules for each version.

 

Bazel

 

 

1. What is Bazel? Understanding Google’s Build System

Bazel is the open-source version of Google’s internal Blaze build system—a fast, scalable, multi-language build tool. Since its public release in 2015, it has been adopted by numerous large-scale projects and has become a standard in the build tool ecosystem.

Key Features of Bazel

Speed and Scalability
Bazel supports incremental builds, rebuilding only what has changed. It maintains fast build speeds even with massive codebases. Through remote caching and distributed builds, teams can share build results, significantly improving productivity.

Multi-Language Support
Bazel manages multiple languages and platforms—Java, C++, Python, Go, Android, iOS, and more—within a single build system. It’s particularly powerful in monorepo environments.

Reproducible Builds
Bazel uses sandboxing to isolate build environments, ensuring identical outputs for identical inputs. This is critical in CI/CD pipelines.

 

 

2. Bazel’s Release Model – Understanding LTS and Rolling Releases

Starting with Bazel 4.0, Google provides two release tracks. Understanding this structure helps you choose the right version for your project.

LTS (Long Term Support) Releases

Optimal for Production Environments Requiring Stability

LTS releases are major versions (4.0, 5.0, 6.0, etc.) released approximately every 12 months. Each LTS version receives 3 years of support. Most enterprise environments should use LTS releases.

LTS versions receive bug fixes and backward-compatible features through minor releases (e.g., 6.1, 6.2). New minor versions are released approximately every 2 months, with patch releases provided as needed for security issues or critical bugs.

Rolling Releases

For Developers Who Want the Latest Features

Rolling releases are created from Bazel’s main branch approximately every 2 weeks. Synchronized with Google’s internal Blaze releases, they provide the earliest access to new changes.

However, rolling releases may include breaking changes, so they’re better suited for testing and development environments rather than production.

 

 

3. Understanding Bazel’s Support Lifecycle

Bazel LTS versions go through three stages during their lifecycle.

Active Stage

When a new LTS version is released, it immediately enters the Active stage. During this stage, important features and bug fixes are backported through minor releases. New minor versions are released approximately every 2 months, providing the most active support.

Maintenance Stage

When the next LTS version is released, the previous version transitions to Maintenance. During this stage, only critical bugs—security issues and OS compatibility problems—are backported. No new features are added, but stable usage continues.

Deprecated Stage

After 2 years in Maintenance, versions transition to Deprecated. No support is provided at this stage. Even if security vulnerabilities are discovered, no patches are released. You must upgrade to a newer version before reaching this stage.

 

 

4. Complete Bazel LTS Version Support Schedule (As of October 2025)

Detailed EOS/EOL schedules for each LTS version are organized in tables below. This information is compiled from Bazel’s official documentation, GitHub Releases, and endoflife.date.

Complete LTS Version Overview

LTS VersionRelease DateLatest VersionSupport StageEnd of SupportNotes
Bazel 9Late 2025 (planned)RollingIn DevelopmentTBDExpected late 2025, WORKSPACE fully removed
Bazel 8December 9, 20248.4.2ActiveDecember 2027Current latest LTS, Bzlmod enabled by default
Bazel 7December 11, 20237.6.2MaintenanceDecember 2026Bzlmod, BwoB, Skymeld enabled by default
Bazel 6December 19, 20226.5.0MaintenanceDecember 2025Bzlmod GA release
Bazel 5January 19, 20225.4.1DeprecatedJanuary 2025Support ended, upgrade required
Bazel 4January 19, 20214.2.4DeprecatedJanuary 2024First LTS release, support fully ended
Bazel 3.x and earlier~ 2020UnsupportedBefore 2021Pre-LTS versions, all support ended

All Minor/Patch Releases by LTS Version

Bazel 8.x (Active LTS) – Supported Until December 2027

VersionRelease DateTypeKey Changes
8.0.02024-12-09MajorFirst LTS release, Bzlmod enabled by default
8.1.0Feb 2025 (est.)MinorBug fixes and feature backports
8.2.0Apr 2025 (est.)MinorBug fixes and feature backports
8.2.12025PatchCritical bug fixes
8.3.02025-06-23MinorAdded repo_contents_cache
8.3.12025-06-30PatchRunfiles-related fixes
8.4.02025-09-04MinorSystem trust store support
8.4.12025-09-11PatchRepository cache fixes
8.4.2Oct 2025PatchmacOS Tahoe compatibility fix (current latest)

Bazel 7.x (Maintenance LTS) – Supported Until December 2026

VersionRelease DateTypeKey Changes
7.0.02023-12-11MajorBzlmod, BwoB, Skymeld enabled by default
7.1.02024MinorBug fixes and feature backports
7.2.02024MinorBug fixes and feature backports
7.3.02024MinorBug fixes and feature backports
7.4.02024MinorBug fixes and feature backports
7.5.02024MinorBug fixes and feature backports
7.6.02025MinorBug fixes and feature backports
7.6.12025PatchCritical bug fixes
7.6.2Oct 2025PatchmacOS Tahoe compatibility fix (current latest)

Bazel 6.x (Maintenance LTS) – Supported Until December 2025

VersionRelease DateTypeKey Changes
6.0.02022-12-19MajorBzlmod GA transition
6.1.02023MinorBug fixes and feature backports
6.1.12023PatchCritical bug fixes
6.1.22023PatchCritical bug fixes
6.2.02023MinorInitial lockfile support
6.2.12023PatchCritical bug fixes
6.3.02023MinorBug fixes and feature backports
6.3.12023PatchCritical bug fixes
6.3.22023PatchCritical bug fixes
6.4.02023MinorBug fixes and feature backports
6.5.0Jan 2024MinorBug fixes and feature backports (current latest)

Bazel 5.x (Deprecated) – Support Ended

VersionRelease DateTypeKey Changes
5.0.02022-01-19MajorExperimental Bzlmod introduction
5.1.02022MinorBug fixes and feature backports
5.1.12022PatchCritical bug fixes
5.2.02022MinorBug fixes and feature backports
5.3.02022MinorBug fixes and feature backports
5.3.12022PatchCritical bug fixes
5.3.22022PatchCritical bug fixes
5.4.02022MinorBug fixes and feature backports
5.4.12023PatchFinal release (support ended)

Bazel 4.x (Deprecated) – Support Ended

VersionRelease DateTypeKey Changes
4.0.02021-01-19MajorFirst LTS release
4.1.0May 2021MinorJava workers multithreading improvements
4.2.0Aug 2021Minorrequired_providers exposed to Starlark
4.2.12021PatchCritical bug fixes
4.2.22021PatchCritical bug fixes
4.2.42022PatchFinal release (support ended)

Pre-LTS Versions (Reference)

Versions before Bazel 4.0 had no LTS policy and all support has ended.

Version RangeRelease PeriodStatus
Bazel 3.x2020Unsupported
Bazel 2.x2019-2020Unsupported
Bazel 1.x2019Unsupported
Bazel 0.x2015-2019Unsupported

Key Features by Version

Bazel 8.x (Current Active)

  • Bzlmod set as default external dependency system (WORKSPACE disabled)
  • Android, C++, Java, Protobuf, Shell rules modularized to Starlark
  • Announced Bazel 5.0 support end (January 2025)
  • System trust store support by default (from 8.4.0)

Bazel 7.x (Maintenance)

  • Bzlmod enabled by default
  • Build without the Bytes (BwoB) enabled by default, up to 40% build speed improvement
  • Project Skymeld enabled, up to 15% build time reduction
  • Android and C++ platform-based toolchain resolution enabled

Bazel 6.x (Maintenance)

  • Bzlmod transitioned to GA (Generally Available)
  • Bazel Central Registry (BCR) launched for structured module management
  • Initial lockfile support (from 6.2.0)

Bazel 5.x and 4.x (Deprecated)

  • No longer supported
  • No security updates
  • Immediate upgrade to latest LTS version required

 

 

5. Version Upgrade Strategy – When and How to Migrate

Bazel version upgrades should be planned carefully. Here’s a specific guide based on your current version.

Upgrade Roadmap by Current Version

Active Stage (Bazel 8.x)

Current VersionRecommended ActionUrgencyDetails
8.0.x ~ 8.3.xUpgrade to 8.4.2LowMinor releases maintain backward compatibility
8.4.0 ~ 8.4.1Upgrade to 8.4.2LowmacOS Tahoe compatibility improvements, stable patches
8.4.2Maintain currentLatest version, supported until December 2027

Maintenance Stage (Bazel 6.x, 7.x)

Current VersionRecommended ActionUrgencyDeadline
6.x (6.5.0 or earlier)Upgrade to 7.6.2 or 8.4.2Very HighSupport ends December 2025
7.0.x ~ 7.5.xUpgrade to 7.6.2MediumSupported until December 2026
7.6.2Plan 8.x migrationLowSupported until December 2026, plenty of time

Deprecated Stage (Bazel 4.x, 5.x)

Current VersionRecommended ActionUrgencyRisk Level
5.xImmediately upgrade to 7.6.2 or 8.4.2CriticalSupport ended, high security risk
4.xImmediately upgrade to 7.6.2 or 8.4.2CriticalSupport fully ended, severe security risk

Pre-LTS Versions (Bazel 3.x and earlier)

All pre-LTS versions require immediate upgrade to the latest LTS version. Support has completely ended and there’s a risk of serious security vulnerabilities.

Step-by-Step Migration Guide

Step 1: Check Current Version

bazel --version

Step 2: Determine Migration Path

Starting VersionRecommended PathEstimated Time
6.x → 8.x6.x → 7.x → 8.x (gradual)2-4 weeks
7.x → 8.x7.x → 8.x (direct)1-2 weeks
5.x or earlier → 8.x5.x → 6.x → 7.x → 8.x (gradual)4-8 weeks

Step 3: Validate in Test Environment

  • Test thoroughly in non-production environments first
  • Validate builds with new version in CI/CD pipelines
  • Use --incompatible_* flags for compatibility issues

Step 4: Production Deployment

  • Gradual rollout (canary deployment)
  • Prepare rollback plan
  • Enhanced monitoring

Version-Specific Migration Checklist

Bazel 6 → 7 Upgrade

  • [ ] Verify Bzlmod is enabled by default but WORKSPACE still works
  • [ ] Assess impact of BwoB (Build without the Bytes) default enablement
  • [ ] Measure up to 40% build performance improvement
  • [ ] Review Android/C++ platform toolchain changes

Bazel 7 → 8 Upgrade

  • [ ] Address WORKSPACE disabling (--enable_workspace flag if needed)
  • [ ] Use --incompatible_autoload_externally flag for transition period
  • [ ] Verify Android, C++, Java rules Starlark modularization
  • [ ] Check MODULE.bazel migration completion

Preparing for Bazel 8 → 9 Upgrade (Expected Late 2025)

  • [ ] Prepare for complete WORKSPACE removal
  • [ ] Complete MODULE.bazel migration by end of 2025
  • [ ] Establish Bzlmod-only dependency management system
  • [ ] Study migration guide: Official Guide

 

 

6. Version Selection Guide by Project Type

Choose the appropriate version based on your project situation and requirements.

Version Recommendation Matrix by Scenario

Project TypeRecommended VersionReasonConsiderations
New ProjectsBazel 8.4.2Latest features, supported until 2027Use MODULE.bazel recommended
Large Production (Stability Priority)Bazel 7.6.2Proven stability, supported until 2026Plan 8.x migration before 2026
Legacy Systems (WORKSPACE Dependent)Bazel 7.6.2WORKSPACE parallel support8.x disables WORKSPACE
Experimental/Dev EnvironmentsRolling ReleasePreview latest features earlyNot recommended for production
CI/CD PipelinesBazel 8.4.2Long-term support, excellent cachingBazelisk recommended

New Projects

Use the latest Active LTS version, Bazel 8.4.2.

Advantages

  • 3 years of stable support until December 2027
  • Latest features and performance improvements (BwoB, Skymeld, etc.)
  • MODULE.bazel default support for easy dependency management
  • Minimizes future upgrade burden

Getting Started

# Install Bazelisk (recommended)
npm install -g @bazel/bazelisk

# Create .bazelversion file in project root
echo "8.4.2" > .bazelversion

# Manage dependencies with MODULE.bazel
# Use instead of WORKSPACE

Large Production Environments

Currently Using Bazel 7.x

  • Maintain but plan 8.x migration before end of 2026
  • Update to 7.6.2 for latest patches
  • No rush to change as stability is proven

Currently Using Bazel 6.x

  • Support ends December 2025—approaching quickly
  • Must upgrade this year to 7.6.2 or 8.4.2
  • Gradual approach recommended: 6.x → 7.x → 8.x

Currently Using Bazel 5.x or Earlier

  • Immediate upgrade required (security risk)
  • Move to at least 7.6.2 or higher
  • Consider forming dedicated migration project team

Complex Build Systems / High WORKSPACE Dependency

Bazel 7.6.2 Recommended

For projects still heavily using WORKSPACE, Bazel 7.x is appropriate.

Reasons

  • Parallel WORKSPACE and Bzlmod support
  • Allows gradual migration
  • Supported until December 2026 provides ample transition time

Migration Roadmap

  1. 2025: Stabilize on Bazel 7.6.2
  2. H2 2025: Gradual transition to MODULE.bazel
  3. H1 2026: Upgrade to Bazel 8.x
  4. H2 2026: Complete WORKSPACE removal, prepare for Bazel 9

Latest Feature Testing / R&D

Rolling Release or Bazel 9 RC (from H2 2025)

Use Rolling Release to preview features of the next LTS version.

Important Notes

  • Absolutely no production environment use
  • Breaking changes possible
  • Use only in development/test environments
  • New version released every 2 weeks

Usage

# In .bazelversion file
rolling

# Or latest RC (from H2 2025)
last_rc

Special Scenario Selection Guide

Android App Development

  • Bazel 8.4.2 recommended
  • Android rules fully transitioned to Starlark
  • Compatible with latest rules_android

iOS App Development

  • Bazel 8.4.2 or 7.6.2
  • Improved Apple Silicon support
  • Verify Xcode compatibility

Monorepo Management

  • Bazel 8.4.2 strongly recommended
  • Bzlmod optimizes large-scale dependency management
  • Significant build time reduction with remote caching and BwoB

Open Source Projects

  • Bazel 7.6.2 recommended (broader compatibility)
  • Use 8.4.2 if community is transitioning to 8.x
  • Specify minimum supported version

Version Selection Decision Flowchart

Is this a new project?
  → Yes: Bazel 8.4.2

  → No: What's your current version?
    
    → 6.x or earlier: Upgrade immediately (7.6.2 or 8.4.2)
    
    → 7.x: 
      - Heavy WORKSPACE usage?
        → Yes: Maintain 7.6.2 + gradual migration
        → No: Consider upgrading to 8.4.2
    
    → 8.x: 
      - Below 8.4.2?
        → Yes: Update to 8.4.2
        → No: Maintain current

 

 

7. Bazel Version Management Tool – Using Bazelisk

If you need to use different Bazel versions across multiple projects, use Bazelisk. Bazelisk is a version management tool that automatically downloads and runs the appropriate Bazel version for each project.

Create a .bazelversion file in your project root and specify the desired version:

8.4.2

Bazelisk will automatically use that version. To test a Rolling Release:

last_rc

This automatically uses the latest Release Candidate version.

 

 

8. Useful References and Links

Official Documentation

Version Management

Migration Guides

Community

 

 

Conclusion (Summary)  :

Bazel’s version support policy features a clear 3-year LTS structure, making it suitable for stable production use. By understanding each version’s end-of-support date and upgrading systematically, you can ensure both security and stability.

Key Summary

Immediate Action Required

  • Bazel 5.x or earlier: Upgrade immediately (security risk)
  • Bazel 6.x: Support ends December 2025, migration required this year

Stable Operation

  • Bazel 7.6.2: Supported until December 2026, plan 8.x migration
  • Bazel 8.4.2: Latest version, supported until December 2027

New Projects

  • Bazel 8.4.2 strongly recommended
  • Start with MODULE.bazel
  • Access latest features and long support period

2025-2027 Bazel Roadmap

PeriodMajor EventsAction Items
January 2025Bazel 5 support ends5.x users upgrade immediately
H2 2025Bazel 9.0 release expectedComplete MODULE.bazel migration
December 2025Bazel 6 support ends6.x users complete upgrade
December 2026Bazel 7 support ends7.x users move to 8.x
December 2027Bazel 8 support ends (expected)Stable long-term usage possible

Version Management Best Practices

1. Use Bazelisk Automatically manage different Bazel versions across projects with Bazelisk.

2. Manage .bazelversion Files Include .bazelversion in Git to ensure the entire team uses the same version.

3. Regular Version Reviews Review current version support status and upgrade needs quarterly.

4. Test Environment First Always validate new versions thoroughly in test environments before production.

5. CI/CD Pipeline Integration Add version check scripts to your build system to prevent using unsupported versions.

Need Additional Help?

Experiencing difficulties with Bazel version upgrades or migration? Leverage official documentation and the community for support.

For complex migrations:

  1. Ask real-time questions on Bazel Slack
  2. Share experiences on bazel-discuss
  3. Report bugs on GitHub Issues

Keep your build environment secure and efficient. Maximize productivity by leveraging Bazel’s powerful performance and stable LTS policy!

 

 

Leave a Reply