@@ -122,3 +122,48 @@ Notes
122122 libc++, ensure its headers are installed (e.g., ``/usr/include/c++/v1 `` or Conda ``libcxx-devel ``) and pass
123123 ``-stdlib=libc++ ``; otherwise libstdc++ is typically selected by default on Linux.
124124- AST Canopy is linked against Clang 20. For host resources, please use corresponding Clang version.
125+
126+
127+ Generated bindings and Numba-CUDA version requirements
128+ -------------------------------------------------------
129+
130+ **What version of numba-cuda do generated bindings require? **
131+
132+ Bindings generated by Numbast have specific version requirements for ``numba-cuda `` at runtime. The version of
133+ Numbast used to generate the bindings determines the compatible ``numba-cuda `` versions.
134+
135+ .. list-table :: Numbast to numba-cuda compatibility
136+ :header-rows: 1
137+ :widths: 30 70
138+
139+ * - Numbast Version
140+ - Required numba-cuda Version
141+ * - 0.6.0 (current dev)
142+ - ``>=0.21.0,<0.23.0 ``
143+ * - 0.5.x
144+ - ``>=0.20.1,<0.21.0 ``
145+
146+ **Why do generated bindings have version requirements? **
147+
148+ Numbast generates Python code that uses Numba-CUDA's internal APIs. These APIs can change between releases, so
149+ bindings generated with a specific version of Numbast are tested against a specific range of ``numba-cuda `` versions.
150+
151+ **How do I ensure compatibility? **
152+
153+ *For dynamic binding generation: *
154+
155+ - The correct ``numba-cuda `` version constraints are automatically enforced at the package dependency level
156+ and managed by your package manager (pip or conda). When you install Numbast, compatible versions of
157+ ``numba-cuda `` are installed automatically via the dependencies specified in ``pyproject.toml `` and Conda
158+ environment files.
159+
160+ *For static binding generation: *
161+
162+ - When distributing generated bindings, document the required ``numba-cuda `` version range in your package
163+ dependencies so users can install a compatible version.
164+ - Generated static bindings (see :doc: `Static binding generation <static >`) can be regenerated with newer
165+ versions of Numbast if you need to support newer ``numba-cuda `` releases.
166+
167+ .. note ::
168+ These version restrictions may be relaxed or removed once ``numba-cuda `` releases a stable 1.0 version with
169+ stabilized public APIs. Until then, bindings are tested against specific version ranges to ensure compatibility.
0 commit comments