Skip to content

Conversation

@acul71
Copy link
Contributor

@acul71 acul71 commented Dec 16, 2025

This PR fixes the release process by applying improvements from py-multihash PR 31.

Changes

  • Makefile: Added release automation targets:

    • validate-newsfragments: Validates newsfragments and builds draft release notes
    • build-docs: Builds documentation with doctest support
    • package-test: Builds and tests the package
    • notes: Prepares release notes with towncrier
    • release: Main release target that bumps version, builds, pushes, and uploads to PyPI
    • check-bump and check-git: Helper targets for validation
  • docs/conf.py: Added sphinx.ext.doctest extension for doctest support in documentation builds

  • pyproject.toml: Fixed version string quotes in bumpversion config (changed from single to double quotes to match actual format in multibase/__init__.py)

  • scripts/release/test_package.py: Created comprehensive package test script that validates the built package can be installed and all functionality works correctly

Testing

The package-test target has been tested and successfully validates:

  • Package installation
  • Multiple encoding types (base64, base16, base32)
  • Core functions (encode, decode, is_encoded, etc.)
  • Classes (Encoder, Decoder)
  • Error handling
  • All exported functionality

Closes #26

web3-bot and others added 2 commits December 16, 2025 03:16
Fixes #24

Updated pyupgrade from v3.15.0 to v3.21.2 to resolve Python 3.14
compatibility issues in linting. The previous version had a bug with
Python 3.14's tokenize module that caused TypeError when processing files.

- Updated .pre-commit-config.yaml
- Added newsfragment for issue #24
- All Python 3.14 lint tests now pass
- Add release automation targets to Makefile (validate-newsfragments, build-docs, package-test, notes, release, check-bump, check-git)
- Add sphinx.ext.doctest extension to docs/conf.py for doctest support
- Fix version string quotes in pyproject.toml bumpversion config
- Create comprehensive package test script (scripts/release/test_package.py)

This aligns the release process with py-multihash PR 31 improvements.
@acul71 acul71 merged commit 480c2bc into master Dec 16, 2025
21 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.

Fix release process

3 participants