Skip to content

[12.9.x] Relicense CUDA Bindings and CUDA Python under Apache 2.0#2294

Open
kkraus14 wants to merge 6 commits into
12.9.xfrom
codex/relicense-bindings-python-12.9
Open

[12.9.x] Relicense CUDA Bindings and CUDA Python under Apache 2.0#2294
kkraus14 wants to merge 6 commits into
12.9.xfrom
codex/relicense-bindings-python-12.9

Conversation

@kkraus14

@kkraus14 kkraus14 commented Jul 2, 2026

Copy link
Copy Markdown
Collaborator

What

Manual backport of merged #2293 for the legacy 12.9.x layout.

  • add the canonical root LICENSE and synchronize the cuda-bindings, cuda-python, and cuda-core distribution copies
  • set Apache-2.0 package metadata and include the license in the affected distributions
  • convert maintained, generated, legacy, example, test, documentation, cuda-core, and shared tooling headers to Apache-2.0
  • remove legacy EULA blocks and enable cuda-bindings contributions through DCO sign-off
  • remove the 12.9.x cuda-core/tooling SPDX exceptions so all non-QA source uses Apache-2.0
  • add cuda-core's NOTICE to its source distribution and update cuda-pathfinder's Apache license copyright notice

Generator

The generated licensing changes follow merged cybind MR leof/cybind!453. This manual backport preserves the 12.9.x generated executable bodies and legacy layout; generated changes are limited to copyright/license headers, with the intentional EULA removal from param_packer.h.

A stock regeneration with cybind 538a87a980c88b7d4b8f74c6dff882ac68284f4d was evaluated but is not included. Its --ctk-target-version 12.9.0 handling limits driver and NVRTC only; cuFile, nvFatbin, nvJitLink, NVML, and NVVM are generated through 13.3.0. That output does not build against CUDA 12.9 because it references newer cuFile types, enums, and functions absent from the 12.9 headers.

Validation

  • all 12.9.x pre-commit hooks passed
  • generated diffs were audited against 12.9.x; every changed generated file is header-only
  • cuda-python and cuda-bindings wheels and sdists report License-Expression: Apache-2.0 and License-File: LICENSE with exact canonical license bytes
  • cuda-core and cuda-pathfinder sdists report License-Expression: Apache-2.0; cuda-core includes both LICENSE and NOTICE
  • a clean CUDA 12.9 native bindings build completed successfully
  • 265 native bindings tests passed with 30 expected skips; two host-sensitive CUDA conditional-graph and OpenGL assertions failed
  • 9 Cython interoperability tests and 27 bindings utility tests passed
  • bindings documentation built successfully
  • root, cuda_bindings, cuda_python, and cuda_core license files are byte-identical
  • no proprietary identifier or EULA text remains outside the intentionally proprietary qa/ tree

Signed-off-by: Keith Kraus <keith.j.kraus@gmail.com>
@kkraus14 kkraus14 added this to the cuda.bindings 13.4.0 & 12.9.8 milestone Jul 2, 2026
@kkraus14 kkraus14 added packaging Anything related to wheels or Conda packages cuda.bindings Everything related to the cuda.bindings module labels Jul 2, 2026
@copy-pr-bot

copy-pr-bot Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

kkraus14 added 2 commits July 2, 2026 02:37
Signed-off-by: Keith Kraus <keith.j.kraus@gmail.com>
Signed-off-by: Keith Kraus <keith.j.kraus@gmail.com>
@kkraus14 kkraus14 marked this pull request as ready for review July 6, 2026 19:38
Signed-off-by: Keith Kraus <keith.j.kraus@gmail.com>
@github-actions github-actions Bot added cuda.core Everything related to the cuda.core module cuda.pathfinder Everything related to the cuda.pathfinder module labels Jul 6, 2026
@kkraus14 kkraus14 self-assigned this Jul 6, 2026
kkraus14 added 2 commits July 6, 2026 16:48
Signed-off-by: Keith Kraus <keith.j.kraus@gmail.com>
This reverts commit f06a0f3.

Signed-off-by: Keith Kraus <keith.j.kraus@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cuda.bindings Everything related to the cuda.bindings module cuda.core Everything related to the cuda.core module cuda.pathfinder Everything related to the cuda.pathfinder module packaging Anything related to wheels or Conda packages

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant