-
Notifications
You must be signed in to change notification settings - Fork 110
Open
Description
Problem Description
During PR #2145 review, static analysis revealed that the ipython-genutils
dependency is unused across multiple runtime images. This package is largely deprecated in modern Jupyter stacks and verification confirms it's not required by any of our pinned dependencies.
Scope Analysis
Impact Scale: 57+ affected files across 6 runtime variants
- pyproject.toml files: 7 affected
- requirements.txt files: 7 affected
- Pipfile/Pipfile.lock files: 14 affected
- pylock.toml files: 7 affected
Affected Runtime Variants:
runtimes/minimal/ubi9-python-3.12
runtimes/datascience/ubi9-python-3.12
runtimes/pytorch/ubi9-python-3.12
runtimes/pytorch+llmcompressor/ubi9-python-3.12
runtimes/rocm-pytorch/ubi9-python-3.12
runtimes/rocm-tensorflow/ubi9-python-3.12
runtimes/tensorflow/ubi9-python-3.12
Verification Results:
- No direct dependency requirements: Key Jupyter packages (ipython 9.0.1, jupyter-client 8.6.3, jupyter-core 5.8.1, traitlets 5.14.3, ipykernel 6.29.5, nbconvert 7.16.6, nbformat 5.10.4, nbclient 0.10.2, papermill 2.6.0) do not list ipython-genutils in their PyPI metadata
- No code imports: No
import ipython_genutils
orfrom ipython_genutils
statements found in repository Python files - Historical artifact: Package appears to be a legacy dependency that was never cleaned up
Solution
Remove ipython-genutils
entries from all dependency manifests:
-
Dependency Manifests:
- Remove from pyproject.toml dependencies lists
- Remove from requirements.txt files
- Remove from Pipfile [packages] sections
-
Lock Files:
- Regenerate Pipfile.lock files using containerized pipenv lock
- Regenerate uv.lock/pylock.toml files using uv lock
- Update any other lock file formats in use
-
Verification:
- Run container builds to ensure no import errors
- Execute notebook tests to verify Jupyter functionality intact
- Confirm no transitive dependency issues
Acceptance Criteria
- All ipython-genutils entries removed from dependency manifests (pyproject.toml, requirements.txt, Pipfile)
- All lock files regenerated without ipython-genutils (Pipfile.lock, pylock.toml, uv.lock)
- Container builds succeed for all affected runtime images
- Notebook functionality tests pass for representative runtimes (minimal, datascience, pytorch, tensorflow)
- No runtime import errors related to missing ipython-genutils
- Documentation updated if any references exist
Implementation Notes
- Follow established containerized dependency locking workflow for cross-platform compatibility
- Test representative runtime images (minimal, datascience, pytorch, tensorflow) to ensure broad compatibility
- Consider running full CI pipeline on affected images before merge
- Coordinate with ongoing uv migration efforts in PR RHAIENG-304: add uv pyproject.tomls for multiple notebooks and runtimes across Jupyter, RStudio, and VSCode #2145
Context
- PR: RHAIENG-304: add uv pyproject.tomls for multiple notebooks and runtimes across Jupyter, RStudio, and VSCode #2145
- Comment: RHAIENG-304: add uv pyproject.tomls for multiple notebooks and runtimes across Jupyter, RStudio, and VSCode #2145 (comment)
- Identified by: CodeRabbit static analysis during pyproject.toml migration review
Metadata
Metadata
Assignees
Labels
No labels
Type
Projects
Status
📋 Backlog