NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #1586 most downloaded on PyPI
hexbytes: Python `bytes` subclass that decodes hex, with a readable console output
Last release 1 months ago
21 Aug 2026
Ships fairly regularly
a new release about every 7 months
Nearly every release is documented
notes for 14 of 14 stable releases
Nothing withdrawn
no release was ever pulled
9 years old
19 releases · first in 2018
Add support for Python 3.13 & 3.14; Drop support for Python 3.8 & 3.9 by @kclowes in #56
--locked because uv.lock file is not used by @fubuloubu in #60Full Changelog: v1.3.1...v2.0.0
One column per quarter.
Bump version: 1.3.1 → 2.0.0-beta.1
Bump version: 1.3.1 → 2.0.0-beta.1
Apply template update - remove Python 3.8 and 3.9, add support for Python 3.14. ( #56 )
remove redundant cast in new ( #55 )
Bump version: 1.3.0 → 1.3.1
Bump version: 1.3.0 → 1.3.1
#53
Add an optimized reduce method to the HexBytes class that avoids validation when pickling / unpickling since the instance is already validated on creation. ( #52 )
Bump version: 1.2.1 → 1.3.0
Bump version: 1.2.1 → 1.3.0
Merge template, adding py313 suppport and removing bumpversion for bump-my-version ( #50 )
Bump towncrier dep from >=21,<22 to >=24,<25 ( #49 )
Bump version: 1.2.0 → 1.2.1
Bump version: 1.2.0 → 1.2.1
Update docs structure, adding Contribution and Code of Conduct sections ( #44 )
Drop bumpversion for bump-my-version and add make package-test to build and test the package before pushing to pypi. ( #44 )
Run mypy with local deps installed instead of pre-commit mirrors-mypy hook. ( #47 )
#46
Bump version: 1.1.0 → 1.2.0
Bump version: 1.1.0 → 1.2.0
Add to_0x_hex() method to provide a quick, explicit way to get an 0x-prefixed string ( #43 )
Bump version: 1.0.0 → 1.1.0
Bump version: 1.0.0 → 1.1.0
Change the name of master branch to main ( #40 )
Merge template updates, notably adding py312 support ( #41 )
Bump version: 0.3.1 → 1.0.0
Bump version: 0.3.1 → 1.0.0
Move HexBytes prepend of 0x from hex method to repr to not break hex of parent bytes class ( #38 )
Drop python 3.7 support ( #39 )
Added missing build dependency. ( #32 )
Add build.os config for readthedocs ( #34 )
Change to using pre-commit to manage linting tools ( #35 )
Merge project template updates and bump mypy to v1.5.1 ( #36 )
Merge template - .gitignore updates and other fixes ( #37 )
Merge template updates, including additional linting, move most lint config to pyproject.toml ( #39 )
Bump version: 0.3.0 → 0.3.1
Bump version: 0.3.0 → 0.3.1
pull in ethereum-python-project-template updates ( #31 )
pull in ethereum-python-project-template updates ( #31 )
Bump version: 0.2.3 → 0.3.0
Bump version: 0.2.3 → 0.3.0
#28
Drop support for Python 3.6, update Sphinx doc dependency requirement ( #27 )
- Type signature now accepts memoryview when creating HexBytes. It converts to a bytes internally, so not any performance benefit. But at least it’s p
Type signature now accepts memoryview when creating HexBytes. It converts to a bytes internally, so not any performance benefit. But at least it’s possible now, and mypy stops complaining. ( #22 )
Improve speed of the check for 0x at the beginning of the hex string. Similar to changes in eth-utils. (Technically merged by #22, but first posted in #21) ( #21 )
Merged in latest changes from project template ( #24 )
#25 , #26
- Pass mypy tests with –no-implicit-reexport
Pass mypy tests with –no-implicit-reexport ( #15 )
Merge in template changes from the last year. Pass pydocstyle tests at the new major version. ( #16 )
- Officially support bytearray, int, and bool as inputs to HexBytes . Drop the dependency on eth-utils, for a much smaller & faster install.
Officially support bytearray, int, and bool as inputs to HexBytes . Drop the dependency on eth-utils, for a much smaller & faster install. ( #12 )
Officially support bytearray, int, and bool as inputs to ~hexbytes.main.HexBytes. Drop the dependency on eth-utils, for a much smaller & faster install. (#12)
- Dropped Python3.5 support (only in name at this release, but py3.6 features will be used soon #10
Released June 3, 2019
Breaking Changes
Dropped Python3.5 support (only in name at this release, but py3.6 features will be used soon #10
Features
A slice of HexBytes will now produce another HexBytes object #9
Maintenance
Added type hints #7
Released Mar 1, 2018 - Marked stable - eth-utils v1.0.1 support
Released Mar 1, 2018
Marked stable
eth-utils v1.0.1 support
- Some generic template updates
Released Feb 21, 2018
pypy3 support
eth-utils v1-beta.2 support
Some generic template updates
- Tested a basic integration with eth-rlp
Released Jan 30, 2018
Tested a basic integration with eth-rlp
Given the simplicity of the project and the longer usage history in web3.py, it is reasonable to bump to beta immediately.
- Update eth-utils to get all required functionality
Released Jan 30, 2018
Added hypothesis tests
Added some docs
Update eth-utils to get all required functionality
Passes all tests
- Launched repository, claimed names for pip, RTD, github, etc
Launched repository, claimed names for pip, RTD, github, etc
Your coding agent can read these notes before it upgrades. Set up the MCP server →