Skip to content

Relicense CUDA Bindings and CUDA Python under Apache 2.0#2293

Open
kkraus14 wants to merge 3 commits into
mainfrom
codex/relicense-bindings-python
Open

Relicense CUDA Bindings and CUDA Python under Apache 2.0#2293
kkraus14 wants to merge 3 commits into
mainfrom
codex/relicense-bindings-python

Conversation

@kkraus14

@kkraus14 kkraus14 commented Jul 2, 2026

Copy link
Copy Markdown
Collaborator

What

  • relicense cuda-bindings and the cuda-python metapackage under Apache 2.0
  • make the root LICENSE canonical and package Apache 2.0 license copies in all independently built distributions while preserving package-specific copyright spans
  • set License-Expression metadata and package the canonical license in wheels and sdists
  • convert generated and maintained source headers without functional generated-code changes
  • remove the remaining proprietary EULA text and enable cuda-bindings contributions through the DCO workflow

Dependency

This draft is based on the post-PR-2285 main branch and is blocked on the internal cybind MR.

Validation

  • clean modern and legacy generation for CTK 13.3 and 12.9 emitted Apache-2.0 for all 68 CUDA outputs while preserving the proprietary default for unrelated outputs
  • cuda-python and cuda-bindings wheels and sdists report License-Expression: Apache-2.0 and License-File: LICENSE with exact canonical license bytes
  • local/path-based cuda-bindings lockfile entries report Apache-2.0 while historical released-package entries retain their original metadata
  • CUDA 13.3 bindings wheel built successfully
  • 378 bindings tests passed with 64 expected skips
  • 9 Cython interoperability tests passed
  • bindings documentation built successfully
  • all repository pre-commit hooks passed

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.

@github-actions github-actions Bot added the cuda.pathfinder Everything related to the cuda.pathfinder module label Jul 2, 2026
Comment thread toolshed/sync_licenses.py Outdated
Comment thread toolshed/check_spdx.py Outdated
Signed-off-by: Keith Kraus <keith.j.kraus@gmail.com>
@kkraus14

kkraus14 commented Jul 2, 2026

Copy link
Copy Markdown
Collaborator Author

/ok to test

@kkraus14 kkraus14 marked this pull request as ready for review July 2, 2026 14:25
@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown

@mdboom mdboom left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should update the latest copyright year on any file we've relicensed. The copyright year checker missed some -- possibly because you didn't have the changes statged when it ran (see #2293 and #2273).

Also I think the start copyright year for cuda-pathfinder was updated inadvertently.

@@ -1,5 +1,5 @@
# Copyright 2021-2025 NVIDIA Corporation. All rights reserved.
# SPDX-License-Identifier: LicenseRef-NVIDIA-SOFTWARE-LICENSE

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure why the copyright year updater didn't catch this one, but we should probably update all the years on the files this touches.

Comment thread cuda_pathfinder/LICENSE Outdated
@@ -1,4 +1,4 @@
Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
Copyright (c) 2024-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Retroactive? I don't think cuda-pathfinder existed in 2024.

@rwgk

rwgk commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

codex found this:

Tracked lockfiles still contain old cuda-bindings license metadata, e.g. cuda_bindings/pixi.lock:3035 and cuda_core/pixi.lock:4497. They are excluded from SPDX checks and partly describe old solved/released packages, but they will still show up in repo-wide old-license searches.

Signed-off-by: Keith Kraus <keith.j.kraus@gmail.com>
@github-actions github-actions Bot added the cuda.core Everything related to the cuda.core module label Jul 2, 2026
@rwgk

rwgk commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Tracked lockfiles still contain old cuda-bindings license metadata

I raised issue #2298 after seeing this.

Not sure if we want to do anything about it, but I thought it's useful to document clearly what we have at the moment.

@rwgk

rwgk commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

@kkraus14 this branch is out-of-date with main. Do you want to re-trigger the CI with main merged?

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.

3 participants