Skip to content

Add versionadded directives to all public API functions#7215

Merged
bernhardmgruber merged 6 commits intoNVIDIA:mainfrom
cliffburdick:cliffburdick/thrust_api_version
Jan 17, 2026
Merged

Add versionadded directives to all public API functions#7215
bernhardmgruber merged 6 commits intoNVIDIA:mainfrom
cliffburdick:cliffburdick/thrust_api_version

Conversation

@cliffburdick
Copy link
Contributor

@cliffburdick cliffburdick commented Jan 14, 2026

Description

Add Sphinx .. versionadded:: directives to all Thrust API functions that appear in the public documentation. This helps users understand which version of CCCL introduced each API.

  • Legacy APIs (pre-CCCL) are marked as versionadded:: 2.2.0
  • reduce_into functions: 3.2.0
  • transform_n and transform_if_n functions: 3.1.0
  • inclusive_scan with init parameter: 2.6.0

Use \verbatim embed:rst:leading-asterisk with /* */ style comments to ensure directives render correctly in Sphinx documentation. The //! comment style does not work with embed:rst as Doxygen includes the comment prefixes in the verbatim content.

Verified correctness with local doc generation. New look:

image

Add Sphinx `.. versionadded::` directives to all Thrust API functions
that appear in the public documentation. This helps users understand
which version of CCCL introduced each API.

- Legacy APIs (pre-CCCL) are marked as versionadded:: 2.2.0
- reduce_into functions: 3.2.0
- transform_n and transform_if_n functions: 3.1.0
- inclusive_scan with init parameter: 2.6.0

Use `\verbatim embed:rst:leading-asterisk` with `/* */` style comments
to ensure directives render correctly in Sphinx documentation. The
`//!` comment style does not work with embed:rst as Doxygen includes
the comment prefixes in the verbatim content.
@cliffburdick cliffburdick requested a review from a team as a code owner January 14, 2026 02:39
@cliffburdick cliffburdick requested a review from elstehle January 14, 2026 02:39
@copy-pr-bot
Copy link
Contributor

copy-pr-bot bot commented Jan 14, 2026

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@github-project-automation github-project-automation bot moved this to Todo in CCCL Jan 14, 2026
@cccl-authenticator-app cccl-authenticator-app bot moved this from Todo to In Review in CCCL Jan 14, 2026
Copy link
Contributor

@bernhardmgruber bernhardmgruber left a comment

Choose a reason for hiding this comment

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

This is great, thank you!

@bernhardmgruber
Copy link
Contributor

pre-commit.ci autofix

pre-commit-ci bot and others added 2 commits January 14, 2026 14:09
Co-authored-by: Bernhard Manfred Gruber <bernhardmgruber@gmail.com>
@leofang
Copy link
Member

leofang commented Jan 15, 2026

@cliffburdick this is awesome, how did you scrape the historical data without crazy tools like #6257 (comment)?

@cliffburdick
Copy link
Contributor Author

@cliffburdick this is awesome, how did you scrape the historical data without crazy tools like #6257 (comment)?

Claude did 99% of the work and I verified it as much as I could. It used a combination of git blame and some rules I gave it for Thrust.

@cliffburdick
Copy link
Contributor Author

pre-commit.ci autofix

It looks like clang format is still failing. Should I do this on my end?

@bernhardmgruber
Copy link
Contributor

pre-commit.ci autofix

@bernhardmgruber
Copy link
Contributor

/ok to test bb3e2c7

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@cliffburdick cliffburdick force-pushed the cliffburdick/thrust_api_version branch from bb3e2c7 to f101248 Compare January 16, 2026 22:40
@bernhardmgruber
Copy link
Contributor

pre-commit.ci autofix

@bernhardmgruber
Copy link
Contributor

/ok to test 724d2d7

@github-actions

This comment has been minimized.

@bernhardmgruber bernhardmgruber enabled auto-merge (squash) January 17, 2026 18:59
@github-actions
Copy link
Contributor

🥳 CI Workflow Results

🟩 Finished in 21h 49m: Pass: 100%/86 | Total: 1d 23h | Max: 3h 33m | Hits: 88%/125668

See results here.

@bernhardmgruber bernhardmgruber merged commit cf1f1b2 into NVIDIA:main Jan 17, 2026
194 of 197 checks passed
@github-project-automation github-project-automation bot moved this from In Review to Done in CCCL Jan 17, 2026
shwina pushed a commit to shwina/cccl that referenced this pull request Jan 18, 2026
Add Sphinx `.. versionadded::` directives to all Thrust API functions
that appear in the public documentation. This helps users understand
which version of CCCL introduced each API.

- Legacy APIs (pre-CCCL) are marked as versionadded:: 2.2.0
- reduce_into functions: 3.2.0
- transform_n and transform_if_n functions: 3.1.0
- inclusive_scan with init parameter: 2.6.0

Use `\verbatim embed:rst:leading-asterisk` with `/* */` style comments
to ensure directives render correctly in Sphinx documentation. The
`//!` comment style does not work with embed:rst as Doxygen includes
the comment prefixes in the verbatim content.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

3 participants