Change8

Migrating to XGBoost v3.0.4

Version v3.0.4 introduces 1 breaking change. This guide details how to update your code.

Released: 8/11/2025

1
Breaking Changes
2
Migration Steps
1
Affected Symbols

⚠️ Check Your Code

If you use any of these symbols, you need to read this guide:

__restrict__

Breaking Changes

Issue #1

The internal use of the `__restrict__` qualifier has been removed. Code that relied on `__restrict__` in custom CUDA kernels may fail to compile. Fix by replacing `__restrict__` with the standard C++ `restrict` keyword or removing the qualifier.

Migration Steps

  1. 1
    Search your codebase for occurrences of `__restrict__` and replace them with `restrict` or remove the qualifier.
  2. 2
    If you need CUDA lineinfo, ensure the appropriate build flag is set; otherwise, you can leave it disabled.

Release Summary

XGBoost 3.0.4 removes the `__restrict__` qualifier and makes CUDA lineinfo optional, with experimental CUDA-enabled R binaries now available.

Need More Details?

View the full release notes and all changes for XGBoost v3.0.4.

View Full Changelog