Skip to content

Fix high priority issues: version sync, portable paths, and CI/CD#2

Merged
nittygritty-zzy merged 2 commits intomainfrom
claude/initial-repo-check-011CUKBQd6VGNaKpo9qn8STk
Oct 20, 2025
Merged

Fix high priority issues: version sync, portable paths, and CI/CD#2
nittygritty-zzy merged 2 commits intomainfrom
claude/initial-repo-check-011CUKBQd6VGNaKpo9qn8STk

Conversation

@nittygritty-zzy
Copy link
Owner

This commit addresses three critical improvements identified in the initial repository check:

  1. Version Mismatch Fix:

    • Update CLI version from 0.1.0 to 0.2.0 to match pyproject.toml
    • Ensures users see correct version with --version flag
  2. Portable Path Configuration:

    • Replace hard-coded macOS paths (/Volumes/sandisk/*) with relative paths
    • Use "data" as default directory for cross-platform compatibility
    • Add clear documentation for production path overrides
    • Maintains backward compatibility with environment variables
  3. CI/CD Automation:

    • Add comprehensive test workflow (test.yml) * Runs unit and integration tests on Python 3.10, 3.11, 3.12 * Generates coverage reports * Tests on push to main/develop and all PRs
    • Add code quality workflow (quality.yml)
      • Linting with ruff
      • Type checking with mypy * Security scanning with safety * Format checking

These changes improve maintainability, portability, and automated quality assurance for the project.

🤖 Generated with Claude Code

This commit addresses three critical improvements identified in the initial
repository check:

1. Version Mismatch Fix:
   - Update CLI version from 0.1.0 to 0.2.0 to match pyproject.toml
   - Ensures users see correct version with --version flag

2. Portable Path Configuration:
   - Replace hard-coded macOS paths (/Volumes/sandisk/*) with relative paths
   - Use "data" as default directory for cross-platform compatibility
   - Add clear documentation for production path overrides
   - Maintains backward compatibility with environment variables

3. CI/CD Automation:
   - Add comprehensive test workflow (test.yml)
     * Runs unit and integration tests on Python 3.10, 3.11, 3.12
     * Generates coverage reports
     * Tests on push to main/develop and all PRs
   - Add code quality workflow (quality.yml)
     * Linting with ruff
     * Type checking with mypy
     * Security scanning with safety
     * Format checking

These changes improve maintainability, portability, and automated quality
assurance for the project.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit fixes two test issues discovered in CI:

1. Pytest Collection Warning (test_base_ingestor.py):
   - Renamed TestIngestor to MockIngestor
   - Pytest was incorrectly treating the helper class as a test class
   - The class starts with "Test" but is a concrete implementation for testing
   - Updated all references in fixtures and assertions

2. Validator Test Failures (test_qlib_binary_writer.py):
   - Fixed bug in QlibBinaryValidator._validate_instruments()
   - Instruments file format is tab-separated: SYMBOL\tstart_date\tend_date
   - Validator was not splitting by tab, causing symbol lookups to fail
   - Now properly extracts just the symbol field (first column)
   - This fixes both test_validator_features and test_validator_full

Test Results:
- All 123 unit tests now pass (previously 2 failures, 1 warning)
- test_base_ingestor.py: 11/11 passed
- test_qlib_binary_writer.py: 20/20 passed (including previously failing tests)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@nittygritty-zzy nittygritty-zzy merged commit 5dfb1e5 into main Oct 20, 2025
12 checks passed
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.

2 participants

Comments