-
Notifications
You must be signed in to change notification settings - Fork 31
New install #90
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New install #90
Conversation
- Add make help and make pr targets - Add make fix and make typecheck targets - Add mypy and pyrefly to dev dependencies - Add type stubs for netaddr and psutil - Update pre-commit config with local typecheck hooks - Update setup target to use pyproject.toml dev dependencies - Match py-libp2p workflow: clean → fix → lint → typecheck → test
- Add missing type annotations to all codec methods (to_bytes, to_string) - Add return type annotations to __str__ methods in exceptions - Fix bytes formatting issue in BinaryParseError.__str__ - Add proper type annotations to DNS resolver methods - Fix dict type parameters in resolver options - Add type annotation to DNSResolver instance in multiaddr.py - Break long function signature to comply with line length limits - All changes verified with mypy, tests, and make pr
- Fix coverage target to use pytest instead of setup.py test - Update AUTHORS file with latest contributors from git history
|
@pacrob @seetadev In "py-cid @ git+https://github.com/ipld/py-cid@807b8ba541d4367d92ac541e198e4b67e101ec2e",This will need to be changed in "py-cid",when the |
…ded v0.0.9 notes, updated .gitignore for HTML files, and documented all typing updates and recent commits - project ready for release.
|
@acul71 : Great, thank you so much Luca for addressing Paul's feedback. Appreciate it. This is indeed looking better. Reviewing it in detail. Thank you so much for fixing the doc issues. @pacrob will be reviewing py-multiaddr PR's today as we had a py-cid release yesterday. Thank you so much @pacrob for your great support and pointers. |
|
@acul71 : Yes, that is exactly what was not covered in py-cid earlier. Please do include windows in CI/CD at .github/workflows/tox.yml Great find indeed, Luca. Appreciate your efforts. |
|
@seetadev |
Done |
I think that's just an artifact from when py-libp2p was on the same template as other ethereum libraries. We only added windows tests starting when py311 was released, just never went back and added earlier. |
Pull Request #90: Development Infrastructure Improvements and py-cid Dependency Update
Overview
This pull request introduces significant improvements to the development infrastructure, type safety, and dependency management for the py-multiaddr project. The changes align the project with py-libp2p development standards and ensure better code quality through enhanced type checking and automated workflows.
Summary of Changes
🔧 Development Infrastructure & Workflow Improvements
1. py-libp2p-style Typecheck Functionality and PR Workflow (
66fae37)make help- Display available targetsmake pr- Complete PR workflow (clean → fix → lint → typecheck → test)make fix- Auto-fix code issuesmake typecheck- Run type checking with mypy and pyreflymypyandpyreflyto dev dependenciesnetaddrandpsutil2. Coverage and Authors Management (
661fc64)🎯 Type Safety Improvements
3. Comprehensive MyPy Type Annotation Fixes (
df2903a)to_bytes,to_string)__str__methods in exceptionsBinaryParseError.__str__make pr📦 Release Management
4. Release Notes Compilation for v0.0.10 (
9242362)🔄 Dependency Management
5. py-cid Dependency Updates (
1191997,eb14eb3)807b8ba541d4367d92ac541e198e4b67e101ec2e6c5d62f865e380116689d11348a4be82fe4f2703Technical Details
Files Modified
.pre-commit-config.yaml,Makefile,pyproject.tomlAUTHORS,HISTORY.rstDependencies Added
mypy- Static type checkingpyrefly- Additional type checkingtypes-netaddr- Type stubs for netaddrtypes-psutil- Type stubs for psutilQuality Assurance
make prworkflowBenefits
Enhanced Developer Experience:
make prmake helpImproved Code Quality:
Better Maintainability:
Dependency Management:
Testing
make prworkflow completes successfullyBreaking Changes
None. All changes are backward compatible and maintain existing API contracts.
Migration Notes
Developers can now use the new
make prcommand for a complete development workflow. The enhanced type checking will help catch potential issues early in development.Author: acul71
Branch: new_install
Commits: 6
Files Changed: 20+
Status: Ready for review