Skip to content

Comments

Modernize to Python 3 and upgrade project infrastructure#50

Merged
alingse merged 4 commits intomasterfrom
upgrade-to-python3
Feb 10, 2026
Merged

Modernize to Python 3 and upgrade project infrastructure#50
alingse merged 4 commits intomasterfrom
upgrade-to-python3

Conversation

@alingse
Copy link
Owner

@alingse alingse commented Feb 10, 2026

Summary

  • Remove Python 2 compatibility code (PY2, future imports, unicode literals)
  • Replace unicodecsv with Python 3 built-in csv module
  • Migrate from setup.py to pyproject.toml with hatchling build backend
  • Replace Travis CI with GitHub Actions (Python 3.8-3.13)
  • Convert README.rst to README.md
  • Add ruff for linting and formatting
  • Add mypy for type checking
  • Add pre-commit hooks configuration
  • Fix file handling to use context managers (with statements)
  • Update test files for Python 3 compatibility

Test plan

  • All 31 tests pass
  • Ruff checks pass
  • MyPy type checks pass

🤖 Generated with Claude Code

alingse and others added 4 commits February 10, 2026 17:36
- Remove Python 2 compatibility code (PY2, future imports, unicode literals)
- Replace unicodecsv with Python 3 built-in csv module
- Migrate from setup.py to pyproject.toml with hatchling build backend
- Replace Travis CI with GitHub Actions (Python 3.8-3.13)
- Convert README.rst to README.md
- Add ruff for linting and formatting
- Add mypy for type checking
- Add pre-commit hooks configuration
- Fix file handling to use context managers (with statements)
- Update test files for Python 3 compatibility

All 31 tests pass. Ruff checks pass. MyPy type checks pass.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
In GitHub Actions environment, uv requires --system flag when
no virtual environment is present.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Simplify CI by using 'uv run' instead of activating virtual
environment. This keeps commands consistent with local development.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add back 'uv venv' step that was accidentally removed
- Add GitHub Actions cache for .venv directory
- Cache key includes Python version and dependency hashes

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@alingse alingse merged commit 7cd29b8 into master Feb 10, 2026
8 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.

1 participant