You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This PR migrates the hed-python project from versioneer to setuptools-scm for version management. This is a significant infrastructure change that removes 686 lines of auto-generated versioneer code and replaces it with a modern, more maintainable solution.
Key Changes:
12 files changed: +71 additions, -722 deletions
Removes versioneer dependency and its generated code
Implements setuptools-scm for automatic version management from git tags
Updates all imports and version references across the codebase
Removes versioneer.py from project root (not shown in diff but implied)
Recommendation: Decide whether to track or ignore hed/_version.py. Common practices:
Option A: Add to .gitignore (requires git ls-files at build time)
Option B: Keep tracked for sdist support, but use write_to_template parameter
4. Build Requirements Version Bump
The change from setuptools>=42 to setuptools>=61 is appropriate but significant.
Recommendation: Note in release notes that this requires setuptools 61+ (released April 2022)
5. MANIFEST.in Cleanup
-include versioneer.py+
include hed/_version.py
Issue: The blank line replacement looks unintentional
Suggestion: Remove the blank line entirely
6. Testing Evidence Missing
No mention of:
CI/CD pipeline status
Manual testing of version reporting
Build verification (sdist/wheel)
Installation testing (regular vs. editable)
Recommendation: Verify:
# Test version detection
python -m setuptools_scm
pip install -e .
python -c "import hed; print(hed.__version__)"# Test package build
python -m build
pip install dist/hedtools-*.whl
7. Documentation Gap
While RELEASE_GUIDE.md is updated, consider documenting:
Developer setup changes (if any)
CI/CD configuration updates needed
Troubleshooting version issues
🧪 Testing Checklist
Before merging, please verify:
versioneer.py has been removed from repository root
Version is correctly detected in development: python -m setuptools_scm
Editable install works: pip install -e . and version is accessible
Standard install works: pip install .
CLI version command works: hedpy --version
Built packages contain correct version: python -m build
CI/CD pipelines pass (if applicable)
Documentation is complete
📊 Overall Assessment
Status: ✅ Generally Good with minor issues to address
Impact: Medium - Infrastructure change affecting version management but not user-facing functionality
Risk Level: Low-Medium
Low risk if properly tested
Medium risk if builds/releases haven't been verified
🎯 Recommendations Priority
HIGH: Verify and document testing performed
HIGH: Add PR description
MEDIUM: Decide on _version.py tracking strategy
MEDIUM: Confirm versioneer.py deletion
LOW: Clean up MANIFEST.in blank line
LOW: Add upgrade notes for setuptools 61+ requirement
💬 Questions for Author
Have you tested the build/install process locally?
Did you remove versioneer.py from the repository root?
What's the strategy for hed/_version.py - track it or gitignore it?
Have you tested the version reporting in various installation scenarios?
Are there any CI/CD changes needed to support this migration?
Verdict: This is a solid modernization effort that improves the codebase. With proper testing verification and minor cleanup, this PR should be good to merge. The migration from versioneer to setuptools-scm is well-executed across all code references.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.