NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #4277 most downloaded on PyPI
A hyper-fast Python module for computing CRC(8, 16, 32, 64) checksum
Last release 18 days ago
16 Sep 2026
Release timing varies
gaps range from 2 weeks to 1.3 years
Nearly every release is documented
notes for 12 of 13 stable releases
8 versions withdrawn
withdrawn after publishing
5 years old
21 releases · first in 2021
One column per quarter.
deprecation: this is the last release series to support Python 3.8, which the next PyO3 release drops; fastcrc will follow when it upgrades.
requires-python is now >=3.8 and no wheels are built for those interpreters.TypeError raised for an invalid initial no longer carries the argument 'initial': prefix, following PyO3's new error reporting; on Python 3.11 and newer the exception carries a note naming the argument instead. The exception type is unchanged.feat: add fastcrc.crc16.autosar , the CRC16 routine of the AUTOSAR CRC library (CRC-16/CCITT-FALSE); it is an alias of crc16.ibm_3740 .
fastcrc.crc16.autosar, the CRC16 routine of the AUTOSAR CRC library (CRC-16/CCITT-FALSE); it is an alias of crc16.ibm_3740.deprecation: this is the last release series to support Python 3.7; fastcrc 0.5.0 will drop it.
crc-fast <https://crates.io/crates/crc-fast>_ crate, and CRC-8 uses slice-by-16 tables; large inputs are over 100x faster on CPUs with VPCLMULQDQ, results are unchanged.fastcrc.crc8/crc16/crc32/crc64 are now the extension functions themselves instead of Python wrappers around them, saving about 15 ns per call; names, positional and keyword calling and results are unchanged, type hints moved to .pyi stubs, and the note below lists what changes about the function objects.bytearray, memoryview, array, mmap, NumPy arrays, ...) through the buffer protocol, treated as raw bytes like zlib.crc32 does; bytes keeps its zero-copy fast path, and as with hashlib a mutable buffer must not be modified by another thread while its checksum is computed. Unsupported objects raise the standard a bytes-like object is required TypeError and non-contiguous buffers raise BufferError.crc crate is no longer a dependency; building from source requires Rust 1.89 or newer.inspect.isfunction is false, they have no __annotations__, __code__ or __dict__ (attributes cannot be set on them), they do not bind as methods when stored on a class, and they do not appear as frames in tracebacks or sys.settrace; the private, undocumented fastcrc.fastcrc.crc_32_iscsi-style names and fastcrc.crc32._crc_32_iscsi-style aliases no longer exist.feat: add fastcrc.crc64.tms570_iso for the TI Hercules TMS570 CRC-64-ISO algorithm.
fastcrc.crc64.tms570_iso for the TI Hercules TMS570 CRC-64-ISO algorithm. (#30)feat: add riscv64gc-unknown-linux-gnu build target.
riscv64gc-unknown-linux-gnu build target. (#27)chore: mark module as gil-free.
chore: bump third-party dependencies.
Nothing published for this version
feat: add support for 8 bit CRCs.
Full Changelog: v0.2.1...v0.3.0
PyPI: https://pypi.org/project/fastcrc/0.3.0/
Documentation: https://fastcrc.readthedocs.io/en/v0.3.0/
feat: add fastcrc.crc16.ibm_refin and fastcrc.crc32.reversed_reciprocal_refin , these are two experimental functions that may be removed in the future
fastcrc.crc16.ibm_refin and fastcrc.crc32.reversed_reciprocal_refin, these are two experimental functions that may be removed in the future.PyPI: https://pypi.org/project/fastcrc/0.2.1/
Documentation: https://fastcrc.readthedocs.io/en/v0.2.1/
Thanks to @gaiuscosades for the help.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
feat: add crc_16_ibm_refin and crc_32_reversed_reciprocal_refin, these are two experimental functions that may be removed in the future.
crc_16_ibm_refin and crc_32_reversed_reciprocal_refin, these are two experimental functions that may be removed in the future.feat: add initial value optional parameter to all CRC functions. (#1, Thank you @wonkyweirdy!)
feat: add initial value optional parameter to all CRC functions. (#1, Thank you @wonkyweirdy!)
Correct the project information.
* First release.
First release.
Your coding agent can read these notes before it upgrades. Set up the MCP server →