Skip to content

feat: update code for v0.17.0 release - #294

Merged
justincdavis merged 5 commits into
mainfrom
feat/judavis/v0.17
Aug 11, 2026
Merged

feat: update code for v0.17.0 release#294
justincdavis merged 5 commits into
mainfrom
feat/judavis/v0.17

Conversation

@justincdavis

Copy link
Copy Markdown
Contributor

No description provided.

@github-advanced-security github-advanced-security AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

CodeQL found more than 20 potential problems in the proposed changes. Check the Files changed tab for more details.

@jbottleson-nvidia jbottleson-nvidia left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

lgtm

justincdavis and others added 5 commits August 11, 2026 21:59
The v0.17 build removed the 3rdparty/pybind11 submodule in favor of a
pip-provided pybind11, so python/CMakeLists.txt now resolves the cmake
dir via `python -m pybind11 --cmakedir`. The CodeQL workflow never
installed it, so the c-cpp matrix leg failed at the python sub-build:

    /usr/bin/python3.10: No module named pybind11
    CMake Error at CMakeLists.txt:37 (message):
      Failed to find pybind11 cmake dir for python3.10.

Install the build dependencies from the generated requirements files
instead of hardcoding versions in the workflow, so CI stays pinned to
versions.env:

  docker/requirements.build.all_pythons.txt  pybind11, pybind11-stubgen
  docker/requirements.build.sys_python.txt   patchelf (+ build tooling)
  tests/requirements.tests.numpy2.txt        numpy

This replaces the hardcoded `numpy==2.0.1 patchelf==0.17.2.1`. numpy
moves 2.0.1 -> 2.2.6 on Python 3.10, matching the pinned test matrix.

Those files are gitignored and generated by build.sh, which runs after
this step, so generate_requirements.sh is invoked first.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Two py/uninitialized-local-variable findings, both where a variable is
only bound on some paths and then used unconditionally.

tests/cvcuda/python/cvcuda_util.py:115 — generate_data() assigns `data`
in an if/elif on the dtype, with no else. A dtype that is neither
numbers.Integral nor numbers.Real falls through both branches and
`return data` raises UnboundLocalError. Raise ValueError instead, so the
caller gets the actual problem rather than a confusing name error. This
matches how get_numpy_dtype_for_format() reports unsupported input.

samples/operators/channelreorder.py:76 — `out_tensor` is only assigned
inside a `for ... break` over out_batch, so an empty batch leaves it
unbound at write_image(). Index the batch directly; an empty batch now
raises IndexError at the point of the mistake. This also matches the
existing idiom in samples/operators/gamma_contrast.py:67.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
With pybind11 available, the python sub-build configure got further and
hit the next missing dependency:

    CMake Error at mod_cvcuda/CMakeLists.txt:19 (find_package):
      Could not find a package configuration file provided by "dlpack"

v0.17 dropped the 3rdparty/dlpack submodule, and dlpack is now installed
from source into the build images only (docker/Dockerfile.devel.deps and
docker/Dockerfile.builder.deps). CodeQL runs on a bare ubuntu-22.04
runner rather than in those images, so nothing provided it.

Add an Install dlpack step mirroring the Dockerfile recipe: clone v1.3,
configure with BUILD_MOCK/BUILD_DOCS off, install to /usr/local. It runs
after Setup environment, which puts CMake 3.20.1 on PATH.

v1.3 reports DLPACK_MAJOR_VERSION 1 / DLPACK_MINOR_VERSION 3, satisfying
the >= 1.3 check at mod_cvcuda/CMakeLists.txt:28.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@justincdavis
justincdavis merged commit 5ac8708 into main Aug 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants