Skip to content

[PRE-TEST] Urgent: requirements.txt Errors Stop Environment Setup #363

@Adityakk9031

Description

@Adityakk9031

Bug: Incomplete requirements.txt Causes Installation Failure

Background

I selected the Ianvs core installation process, which affects all examples in the repository.


Problem Description

When following the official installation instructions from the README:

python -m pip install -r requirements.txt
python setup.py install
ianvs --help

Users encounter multiple missing dependency errors that must be manually resolved.


Debug Process

Step 1: Initial Installation Attempt

cd C:\Users\shivam\Desktop\ianvs
pip install -r requirements.txt
python setup.py install

Error 1: Missing setuptools

ModuleNotFoundError: No module named 'setuptools'

Step 2: After Installing setuptools

pip install setuptools
python setup.py install
ianvs --help

Error 2: Missing colorlog

ModuleNotFoundError: No module named 'colorlog'

Step 3: After Installing colorlog

pip install colorlog
ianvs --help

Error 3: Missing yaml (PyYAML)

ModuleNotFoundError: No module named 'yaml'

Step 4: After Installing PyYAML

pip install pyyaml
ianvs --help

Error 4: Missing sedna

ModuleNotFoundError: No module named 'sedna'

Logs

Current requirements.txt

prettytable~=2.5.0
scikit-learn
numpy
pandas
tqdm
matplotlib
onnx

Missing Dependencies Identified

  • setuptools (required by setup.py)
  • colorlog (required by core/common/log.py)
  • pyyaml (required by core/common/utils.py)
  • sedna (required by core/testenvmanager/dataset/dataset.py)
  • Potentially more (investigation ongoing)

Impact Analysis

Severity: Critical

This issue affects:

  • All new users attempting to install Ianvs
  • All platforms (Windows, Linux, macOS)
  • All examples in the repository
  • CI/CD systems relying on automated installs

Why this is critical

  • Blocks initial setup entirely
  • Creates poor first-time user experience
  • Forces users into trial‑and‑error installation
  • Wastes developer time
  • Discourages adoption and contribution

Goals

This proposal aims to:

  1. Fix the incomplete requirements.txt by adding all missing dependencies
  2. Verify installation end‑to‑end across platforms
  3. Update installation documentation if needed
  4. Add a dependency validation script
  5. Prevent future dependency drift

Proposed Solution

Updated requirements.txt

# Core dependencies
setuptools>=40.0.0
pyyaml>=5.1

# Logging
colorlog>=6.0.0

# KubeEdge dependency
sedna>=0.4.0

# Data processing
prettytable~=2.5.0
scikit-learn>=1.0.0
numpy>=1.19.0
pandas>=1.1.0

# Utilities
tqdm>=4.50.0
matplotlib>=3.3.0
onnx>=1.8.0

Why this fix works

  • Includes all discovered dependencies
  • Uses minimum version constraints to avoid conflicts
  • Groups dependencies logically
  • Improves maintainability and clarity

Do Core Modules Need Changes?

No.

The Python code correctly imports required libraries. The issue lies solely in dependency declaration, not implementation.


Additional Improvements

Dependency Validation Script

Create scripts/validate_dependencies.py to verify required imports before installation.

This script will:

  • Attempt to import each required module
  • Report missing packages clearly
  • Exit with a non‑zero status if dependencies are missing

Documentation Update

Add a Troubleshooting → Missing Dependencies section to installation docs with:

python scripts/validate_dependencies.py
pip install -r requirements.txt
python setup.py install

Testing Plan

Environments

  • Windows 10/11
  • Ubuntu 20.04 / 22.04
  • macOS

Python Versions

  • 3.8
  • 3.9
  • 3.10

Procedure

python -m venv test_env
source test_env/bin/activate  # or test_env\Scripts\activate

pip install -r requirements.txt
python scripts/validate_dependencies.py
python setup.py install
ianvs --help

Success Criteria

  • No ModuleNotFoundError
  • CLI command works
  • At least one example runs successfully
  • Installation reproducible on all platforms

Risk Assessment

Potential Risks

Sedna dependency chain
May introduce additional requirements. Mitigation: document clearly and test thoroughly.

Version conflicts
Use minimum versions rather than exact pins.

Platform differences
Validate across OS environments.


Expected Impact

Quantitative

  • Installation success rate >95%
  • Installation time <10 minutes
  • Fewer installation-related GitHub issues

Qualitative

  • Better first impression for new users
  • Reduced maintainer support load
  • More reliable CI environments
  • Improved contributor onboarding

Conclusion

The incomplete requirements.txt currently blocks all new users from successfully installing Ianvs. Fixing this configuration issue will significantly improve usability, credibility, and adoption with minimal code changes.


Prepared by: Aditya Kumar Singh
Date: 2026-02-17
Contact: [adityakumarsingh9031@gmail.com](mailto:adityakumarsingh9031@gmail.com)

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/bugCategorizes issue or PR as related to a bug.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions