Skip to main content


zfec -- efficient, portable erasure coding tool
===============================================

Generate redundant blocks of information such that if some of the blocks are
lost then the original data can be recovered from the remaining blocks. This
package includes command-line tools, C API, Python API, and Haskell API.

|build| |test| |pypi|

Intro and Licence
-----------------

This package implements an "erasure code", or "forward error correction
code".

You may use this package under the GNU General Public License, version 2 or,
at your option, any later version. You may use this package under the
Transitive Grace Period Public Licence, version 1.0 or, at your option, any
later version. (You may choose to use this package under the terms of either
licence, at your option.) See the file COPYING.GPL for the terms of the GNU
General Public License, version 2. See the file COPYING.TGPPL.rst for the
terms of the Transitive Grace Period Public Licence, version 1.0.

The most widely known example of an erasure code is the RAID-5 algorithm
which makes it so that in the event of the loss of any one hard drive, the
stored data can be completely recovered. The algorithm in the zfec package
has a similar effect, but instead of recovering from the loss of only a
single element, it can be parameterized to choose in advance the number of
elements whose loss it can tolerate.

This package is largely based on the old "fec" library by Luigi Rizzo et al.,
which is a mature and optimized implementation of erasure coding. The zfec
package makes several changes from the original "fec" package, including
addition of the Python API, refactoring of the C API to support zero-copy
operation, a few clean-ups and optimizations of the core code itself, and the
addition of a command-line tool named "zfec".


Installation
------------

``pip install zfec``

To run the self-tests, execute ``tox`` from an unpacked source tree or git checkout.

To run the tests of the Haskell API: ``cabal run test:tests``


Community
---------

The source is currently available via git on the web with the command:

``git clone https://github.com/tahoe-lafs/zfec``

Please post about zfec to the Tahoe-LAFS mailing list and contribute patches:

<https://tahoe-lafs.org/cgi-bin/mailman/listinfo/tahoe-dev>

If you find a bug in zfec, please open an issue on github:

<https://github.com/tahoe-lafs/zfec/issues>

Overview
--------

This package performs two operations, encoding and decoding. Encoding takes
some input data and expands its size by producing extra "check blocks", also
called "secondary blocks". Decoding takes some data -- any combination of
blocks of the original data (called "primary blocks") and "secondary blocks",
and produces the original data.

The encoding is parameterized by two integers, k and m. m is the total
number of blocks produced, and k is how many of those blocks are necessary to
reconstruct the original data. m is required to be at least 1 and at most
256, and k is required to be at least 1 and at most m.

(Note that when k == m then there is no point in doing erasure coding -- it
degenerates to the equivalent of the Unix "split" utility which simply splits
the input into successive segments. Similarly, when k == 1 it degenerates to
the equivalent of the unix "cp" utility -- each block is a complete copy of
the input data.)

Note that each "primary block" is a segment of the original data, so its size
is 1/k'th of the size of original data, and each "secondary block" is of the
same size, so the total space used by all the blocks is m/k times the size of
the original data (plus some padding to fill out the last primary block to be
the same size as all the others). In addition to the data contained in the
blocks themselves there are also a few pieces of metadata which are necessary
for later reconstruction. Those pieces are: 1. the value of K, 2. the
value of M, 3. the sharenum of each block, 4. the number of bytes of
padding that were used. The "zfec" command-line tool compresses these pieces
of data and prepends them to the beginning of each share, so each the
sharefile produced by the "zfec" command-line tool is between one and four
bytes larger than the share data alone.

The decoding step requires as input k of the blocks which were produced by
the encoding step. The decoding step produces as output the data that was
earlier input to the encoding step.


Command-Line Tool
-----------------

The bin/ directory contains two Unix-style, command-line tools "zfec" and
"zunfec". Execute ``zfec --help`` or ``zunfec --help`` for usage
instructions.


Performance
-----------

To run the benchmarks, execute the included bench/bench_zfec.py script with
optional --k= and --m= arguments.

Here's the results for an i7-12700k:

```
measuring encoding of data with K=3, M=10, encoding 1000000 bytes 1000 times in a row...
Average MB/s: 364
measuring decoding of primary-only data with K=3, M=10, 1000 times in a row...
Average MB/s: 1894750
measuring decoding of secondary-only data with K=3, M=10, 1000 times in a row...
Average MB/s: 3298
```

Here is a paper analyzing the performance of various erasure codes and their
implementations, including zfec:

http://www.usenix.org/events/fast09/tech/full_papers/plank/plank.pdf

Zfec shows good performance on different machines and with different values
of K and M. It also has a nice small memory footprint.


API
---

Each block is associated with "blocknum". The blocknum of each primary block
is its index (starting from zero), so the 0'th block is the first primary
block, which is the first few bytes of the file, the 1'st block is the next
primary block, which is the next few bytes of the file, and so on. The last
primary block has blocknum k-1. The blocknum of each secondary block is an
arbitrary integer between k and 255 inclusive. (When using the Python API,
if you don't specify which secondary blocks you want when invoking encode(),
then it will by default provide the blocks with ids from k to m-1 inclusive.)

- C API

fec_encode() takes as input an array of k pointers, where each pointer
points to a memory buffer containing the input data (i.e., the i'th buffer
contains the i'th primary block). There is also a second parameter which
is an array of the blocknums of the secondary blocks which are to be
produced. (Each element in that array is required to be the blocknum of a
secondary block, i.e. it is required to be >= k and < m.)

The output from fec_encode() is the requested set of secondary blocks which
are written into output buffers provided by the caller.

Note that this fec_encode() is a "low-level" API in that it requires the
input data to be provided in a set of memory buffers of exactly the right
sizes. If you are starting instead with a single buffer containing all of
the data then please see easyfec.py's "class Encoder" as an example of how
to split a single large buffer into the appropriate set of input buffers
for fec_encode(). If you are starting with a file on disk, then please see
filefec.py's encode_file_stringy_easyfec() for an example of how to read
the data from a file and pass it to "class Encoder". The Python interface
provides these higher-level operations, as does the Haskell interface. If
you implement functions to do these higher-level tasks in other languages,
please send a patch to tahoe-dev@tahoe-lafs.org so that your API can be
included in future releases of zfec.

fec_decode() takes as input an array of k pointers, where each pointer
points to a buffer containing a block. There is also a separate input
parameter which is an array of blocknums, indicating the blocknum of each
of the blocks which is being passed in.

The output from fec_decode() is the set of primary blocks which were
missing from the input and had to be reconstructed. These reconstructed
blocks are written into output buffers provided by the caller.


- Python API

encode() and decode() take as input a sequence of k buffers, where a
"sequence" is any object that implements the Python sequence protocol (such
as a list or tuple) and a "buffer" is any object that implements the Python
buffer protocol (such as a string or array). The contents that are
required to be present in these buffers are the same as for the C API.

encode() also takes a list of desired blocknums. Unlike the C API, the
Python API accepts blocknums of primary blocks as well as secondary blocks
in its list of desired blocknums. encode() returns a list of buffer
objects which contain the blocks requested. For each requested block which
is a primary block, the resulting list contains a reference to the
apppropriate primary block from the input list. For each requested block
which is a secondary block, the list contains a newly created string object
containing that block.

decode() also takes a list of integers indicating the blocknums of the
blocks being passed int. decode() returns a list of buffer objects which
contain all of the primary blocks of the original data (in order). For
each primary block which was present in the input list, then the result
list simply contains a reference to the object that was passed in the input
list. For each primary block which was not present in the input, the
result list contains a newly created string object containing that primary
block.

Beware of a "gotcha" that can result from the combination of mutable data
and the fact that the Python API returns references to inputs when
possible.

Returning references to its inputs is efficient since it avoids making an
unnecessary copy of the data, but if the object which was passed as input
is mutable and if that object is mutated after the call to zfec returns,
then the result from zfec -- which is just a reference to that same object
-- will also be mutated. This subtlety is the price you pay for avoiding
data copying. If you don't want to have to worry about this then you can
simply use immutable objects (e.g. Python strings) to hold the data that
you pass to zfec.

- Haskell API

The Haskell code is fully Haddocked, to generate the documentation, run
``runhaskell Setup.lhs haddock``.


Utilities
---------

The filefec.py module has a utility function for efficiently reading a file
and encoding it piece by piece. This module is used by the "zfec" and
"zunfec" command-line tools from the bin/ directory.


Dependencies
------------

A C compiler is required. To use the Python API or the command-line tools a
Python interpreter is also required. We have tested it with Python v2.7,
v3.5 and v3.6. For the Haskell interface, GHC >= 6.8.1 is required.


Acknowledgements
----------------

Thanks to the author of the original fec lib, Luigi Rizzo, and the folks that
contributed to it: Phil Karn, Robert Morelos-Zaragoza, Hari Thirumoorthy, and
Dan Rubenstein. Thanks to the Mnet hackers who wrote an earlier Python
wrapper, especially Myers Carpenter and Hauke Johannknecht. Thanks to Brian
Warner and Amber O'Whielacronx for help with the API, documentation,
debugging, compression, and unit tests. Thanks to Adam Langley for improving
the C API and contributing the Haskell API. Thanks to the creators of GCC
(starting with Richard M. Stallman) and Valgrind (starting with Julian
Seward) for a pair of excellent tools. Thanks to my coworkers at Allmydata
-- http://allmydata.com -- Fabrice Grinda, Peter Secor, Rob Kinninmont, Brian
Warner, Zandr Milewski, Justin Boreta, Mark Meras for sponsoring this work
and releasing it under a Free Software licence. Thanks to Jack Lloyd, Samuel
Neves, and David-Sarah Hopwood.


Related Works
-------------

Note: a Unix-style tool like "zfec" does only one thing -- in this case
erasure coding -- and leaves other tasks to other tools. Other Unix-style
tools that go well with zfec include `GNU tar`_ for archiving multiple files
and directories into one file, `lzip`_ for compression, and `GNU Privacy
Guard`_ for encryption or `b2sum`_ for integrity. It is important to do
things in order: first archive, then compress, then either encrypt or
integrity-check, then erasure code. Note that if GNU Privacy Guard is used
for privacy, then it will also ensure integrity, so the use of b2sum is
unnecessary in that case. Note also that you also need to do integrity
checking (such as with b2sum) on the blocks that result from the erasure
coding in *addition* to doing it on the file contents! (There are two
different subtle failure modes -- see "more than one file can match an
immutable file cap" on the `Hack Tahoe-LAFS!`_ Hall of Fame.)

The `Tahoe-LAFS`_ project uses zfec as part of a complete distributed
filesystem with integrated encryption, integrity, remote distribution of the
blocks, directory structure, backup of changed files or directories, access
control, immutable files and directories, proof-of-retrievability, and repair
of damaged files and directories.

`fecpp`_ is an alternative to zfec. It implements a bitwise-compatible
algorithm to zfec and is BSD-licensed.

.. _GNU tar: http://directory.fsf.org/project/tar/
.. _lzip: http://www.nongnu.org/lzip/lzip.html
.. _GNU Privacy Guard: http://gnupg.org/
.. _b2sum: https://blake2.net/
.. _Tahoe-LAFS: https://tahoe-lafs.org
.. _Hack Tahoe-LAFS!: https://tahoe-lafs.org/hacktahoelafs/
.. _fecpp: http://www.randombit.net/code/fecpp/


Enjoy!

Zooko Wilcox-O'Hearn

2013-05-15

Boulder, Colorado

----

.. |pypi| image:: http://img.shields.io/pypi/v/zfec.svg
:alt: PyPI release status
:target: https://pypi.python.org/pypi/zfec

.. |build| image:: https://github.com/tahoe-lafs/zfec/actions/workflows/build.yml/badge.svg
:alt: Package Build
:target: https://github.com/tahoe-lafs/zfec/actions/workflows/build.yml

.. |test| image:: https://github.com/tahoe-lafs/zfec/actions/workflows/test.yml/badge.svg
:alt: Tests
:target: https://github.com/tahoe-lafs/zfec/actions/workflows/test.yml

Release files for zfec 1.5.7.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for zfec 1.5.7.4
File Size Uploaded
zfec-1.5.7.4.tar.gz 84.6 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for zfec 1.5.7.4
File
zfec-1.5.7.4-pp39-pypy39_pp73-win_amd64.whl PyPy 3.9 PyPy 3.9 7.3 Windows x86-64 Details
zfec-1.5.7.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl PyPy 3.9 PyPy 3.9 7.3 Linux glibc 2.17+ x86-64 Details
zfec-1.5.7.4-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl PyPy 3.9 PyPy 3.9 7.3 Linux glibc 2.17+ x86-32, Linux glibc 2.5+ x86-32 Details
zfec-1.5.7.4-pp39-pypy39_pp73-macosx_10_9_x86_64.whl PyPy 3.9 PyPy 3.9 7.3 macOS 10.9+ x86-64 Details
zfec-1.5.7.4-pp38-pypy38_pp73-win_amd64.whl PyPy 3.8 PyPy 3.8 7.3 Windows x86-64 Details
zfec-1.5.7.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl PyPy 3.8 PyPy 3.8 7.3 Linux glibc 2.17+ x86-64 Details
zfec-1.5.7.4-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl PyPy 3.8 PyPy 3.8 7.3 Linux glibc 2.17+ x86-32, Linux glibc 2.5+ x86-32 Details
zfec-1.5.7.4-pp38-pypy38_pp73-macosx_10_9_x86_64.whl PyPy 3.8 PyPy 3.8 7.3 macOS 10.9+ x86-64 Details
zfec-1.5.7.4-pp37-pypy37_pp73-win_amd64.whl PyPy 3.7 PyPy 3.7 7.3 Windows x86-64 Details
zfec-1.5.7.4-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl PyPy 3.7 PyPy 3.7 7.3 Linux glibc 2.17+ x86-64 Details
zfec-1.5.7.4-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl PyPy 3.7 PyPy 3.7 7.3 Linux glibc 2.5+ x86-32, Linux glibc 2.17+ x86-32 Details
zfec-1.5.7.4-pp37-pypy37_pp73-macosx_10_9_x86_64.whl PyPy 3.7 PyPy 3.7 7.3 macOS 10.9+ x86-64 Details
zfec-1.5.7.4-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
zfec-1.5.7.4-cp312-cp312-win32.whl CPython 3.12 CPython 3.12 Windows x86-32 Details
zfec-1.5.7.4-cp312-cp312-musllinux_1_1_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.1+ x86-64 Details
zfec-1.5.7.4-cp312-cp312-musllinux_1_1_i686.whl CPython 3.12 CPython 3.12 Linux musl 1.1+ x86-32 Details
zfec-1.5.7.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details
zfec-1.5.7.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl CPython 3.12 CPython 3.12 Linux glibc 2.5+ x86-32, Linux glibc 2.17+ x86-32 Details
zfec-1.5.7.4-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
zfec-1.5.7.4-cp312-cp312-macosx_10_9_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.9+ x86-64 Details
zfec-1.5.7.4-cp312-cp312-macosx_10_9_universal2.whl CPython 3.12 CPython 3.12 macOS 10.9+ universal2 (ARM64, x86-64) Details
zfec-1.5.7.4-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
zfec-1.5.7.4-cp311-cp311-win32.whl CPython 3.11 CPython 3.11 Windows x86-32 Details
zfec-1.5.7.4-cp311-cp311-musllinux_1_1_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.1+ x86-64 Details
zfec-1.5.7.4-cp311-cp311-musllinux_1_1_i686.whl CPython 3.11 CPython 3.11 Linux musl 1.1+ x86-32 Details
zfec-1.5.7.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details
zfec-1.5.7.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-32, Linux glibc 2.5+ x86-32 Details
zfec-1.5.7.4-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
zfec-1.5.7.4-cp311-cp311-macosx_10_9_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.9+ x86-64 Details
zfec-1.5.7.4-cp311-cp311-macosx_10_9_universal2.whl CPython 3.11 CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64) Details
zfec-1.5.7.4-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
zfec-1.5.7.4-cp310-cp310-win32.whl CPython 3.10 CPython 3.10 Windows x86-32 Details
zfec-1.5.7.4-cp310-cp310-musllinux_1_1_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.1+ x86-64 Details
zfec-1.5.7.4-cp310-cp310-musllinux_1_1_i686.whl CPython 3.10 CPython 3.10 Linux musl 1.1+ x86-32 Details
zfec-1.5.7.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details
zfec-1.5.7.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl CPython 3.10 CPython 3.10 Linux glibc 2.5+ x86-32, Linux glibc 2.17+ x86-32 Details
zfec-1.5.7.4-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
zfec-1.5.7.4-cp310-cp310-macosx_10_9_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.9+ x86-64 Details
zfec-1.5.7.4-cp310-cp310-macosx_10_9_universal2.whl CPython 3.10 CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64) Details
zfec-1.5.7.4-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
zfec-1.5.7.4-cp39-cp39-win32.whl CPython 3.9 CPython 3.9 Windows x86-32 Details
zfec-1.5.7.4-cp39-cp39-musllinux_1_1_x86_64.whl CPython 3.9 CPython 3.9 Linux musl 1.1+ x86-64 Details
zfec-1.5.7.4-cp39-cp39-musllinux_1_1_i686.whl CPython 3.9 CPython 3.9 Linux musl 1.1+ x86-32 Details
zfec-1.5.7.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64 Details
zfec-1.5.7.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl CPython 3.9 CPython 3.9 Linux glibc 2.5+ x86-32, Linux glibc 2.17+ x86-32 Details
zfec-1.5.7.4-cp39-cp39-macosx_11_0_arm64.whl CPython 3.9 CPython 3.9 macOS 11.0+ ARM64 Details
zfec-1.5.7.4-cp39-cp39-macosx_10_9_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.9+ x86-64 Details
zfec-1.5.7.4-cp39-cp39-macosx_10_9_universal2.whl CPython 3.9 CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64) Details
zfec-1.5.7.4-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details
zfec-1.5.7.4-cp38-cp38-win32.whl CPython 3.8 CPython 3.8 Windows x86-32 Details
zfec-1.5.7.4-cp38-cp38-musllinux_1_1_x86_64.whl CPython 3.8 CPython 3.8 Linux musl 1.1+ x86-64 Details
zfec-1.5.7.4-cp38-cp38-musllinux_1_1_i686.whl CPython 3.8 CPython 3.8 Linux musl 1.1+ x86-32 Details
zfec-1.5.7.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ x86-64 Details
zfec-1.5.7.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ x86-32, Linux glibc 2.5+ x86-32 Details
zfec-1.5.7.4-cp38-cp38-macosx_11_0_arm64.whl CPython 3.8 CPython 3.8 macOS 11.0+ ARM64 Details
zfec-1.5.7.4-cp38-cp38-macosx_10_9_x86_64.whl CPython 3.8 CPython 3.8 macOS 10.9+ x86-64 Details
zfec-1.5.7.4-cp38-cp38-macosx_10_9_universal2.whl CPython 3.8 CPython 3.8 macOS 10.9+ universal2 (ARM64, x86-64) Details

Total release size: 4.0 MB

Release files / zfec-1.5.7.4.tar.gz

Download URL zfec-1.5.7.4.tar.gz
Size 84.6 kB
Tags Source
SHA-256 checksum
How to use checksums
1069857218f8babe4084439712720803a11fe91b14f20bc77a96a4e6f4e1111f
BLAKE2b-256 checksum
How to use checksums
14f25e655a102f2c3a24007b73925e2de67ba9efda078beb265993bfcee08c62
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-pp39-pypy39_pp73-win_amd64.whl

Download URL zfec-1.5.7.4-pp39-pypy39_pp73-win_amd64.whl
Size 60.8 kB
Tags PyPy 3.9 PyPy 3.9 7.3 Windows x86-64
SHA-256 checksum
How to use checksums
ae59b5a49bb5223da7e905a9c8a4bd32ac4cb0c6143ac8c467b48a850d74da9f
BLAKE2b-256 checksum
How to use checksums
f031a1ba75f74c4522c6f3aba3bbe59c22285eceb6fdaa2877d59388a58d1288
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL zfec-1.5.7.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 59.8 kB
Tags Linux glibc 2.17+ x86-64 PyPy 3.9 PyPy 3.9 7.3
SHA-256 checksum
How to use checksums
132fc86428c699bf02a0d63b2b780583a6a818d3432f7cb313e5ff8303c99205
BLAKE2b-256 checksum
How to use checksums
53dc31205271865232b9f1835320ad4a137be9a4d3422c7e1321c06d4ef8c8fa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl

Download URL zfec-1.5.7.4-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Size 59.5 kB
Tags Linux glibc 2.17+ x86-32 Linux glibc 2.5+ x86-32 PyPy 3.9 PyPy 3.9 7.3
SHA-256 checksum
How to use checksums
5c6b2434a57ebb8ed2ce699ae06d2d4b547b91ff54768b63e62719d070441552
BLAKE2b-256 checksum
How to use checksums
065216aaade64cb5e4ba71cc61e69aed4dac74a2a9641f1eeed52e15007f73df
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-pp39-pypy39_pp73-macosx_10_9_x86_64.whl

Download URL zfec-1.5.7.4-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
Size 58.1 kB
Tags PyPy 3.9 PyPy 3.9 7.3 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
1c750d8996d94d21a92a649d258a655f8480eb89afabf52c3ec5435fd7851417
BLAKE2b-256 checksum
How to use checksums
5c4d9d7278a530f577752da64e311d29455b86e003530db0dda6cf142c1da86f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-pp38-pypy38_pp73-win_amd64.whl

Download URL zfec-1.5.7.4-pp38-pypy38_pp73-win_amd64.whl
Size 60.8 kB
Tags PyPy 3.8 PyPy 3.8 7.3 Windows x86-64
SHA-256 checksum
How to use checksums
d791027ac136286247021cbcf2a97331428f12b998c65ba657416b4450244445
BLAKE2b-256 checksum
How to use checksums
58f5610e0033c3b296a2fa3560a0701c0c1aafe9988f10aea871eed7adf41d8d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL zfec-1.5.7.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 59.8 kB
Tags Linux glibc 2.17+ x86-64 PyPy 3.8 PyPy 3.8 7.3
SHA-256 checksum
How to use checksums
c01c9d189c99fa65734029e8e4755e8ed3eb9f5f2d345715b945d93b00c117be
BLAKE2b-256 checksum
How to use checksums
d69580e812f210a6f20b071154f5962a18cb78c981b923e0727383818fe67a43
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl

Download URL zfec-1.5.7.4-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Size 59.5 kB
Tags Linux glibc 2.17+ x86-32 Linux glibc 2.5+ x86-32 PyPy 3.8 PyPy 3.8 7.3
SHA-256 checksum
How to use checksums
28c68b04f5e020ad3d1acb49360b747dea56cf071c6d8ff10ee0710abd3c3145
BLAKE2b-256 checksum
How to use checksums
ee5c6afc871c21c7ae472c071c184a430d7e24199291baa0316de05d7c337dce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-pp38-pypy38_pp73-macosx_10_9_x86_64.whl

Download URL zfec-1.5.7.4-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
Size 58.1 kB
Tags PyPy 3.8 PyPy 3.8 7.3 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
82185a50fd6b6fbd31da09118161f018cf0029c5c4a5d9b6793bbe5390832e40
BLAKE2b-256 checksum
How to use checksums
b19dce462c46d5f66e94872dea3914694bf7ac6eddf035a27bb955c5dae6fad8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-pp37-pypy37_pp73-win_amd64.whl

Download URL zfec-1.5.7.4-pp37-pypy37_pp73-win_amd64.whl
Size 60.8 kB
Tags PyPy 3.7 PyPy 3.7 7.3 Windows x86-64
SHA-256 checksum
How to use checksums
d84aae11c909410426a5c76a794c97cc1261afd5a9fe0ce2baefbf0f8e36d72f
BLAKE2b-256 checksum
How to use checksums
296d6be1c3c7d6add295324579e2e8e3471754ca6af4c4088f60138a15964cf8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL zfec-1.5.7.4-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 59.9 kB
Tags Linux glibc 2.17+ x86-64 PyPy 3.7 PyPy 3.7 7.3
SHA-256 checksum
How to use checksums
75375359e21329ef31d9df0442cdfe30d9fc5b17f5d169081dd0019c528c6834
BLAKE2b-256 checksum
How to use checksums
37b4b448b2d52a479fb8988bff3e9d091942dc430e76f1970ea66cc53d2be1ff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl

Download URL zfec-1.5.7.4-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Size 59.6 kB
Tags Linux glibc 2.17+ x86-32 Linux glibc 2.5+ x86-32 PyPy 3.7 PyPy 3.7 7.3
SHA-256 checksum
How to use checksums
0f4f5f16fb5842b2e8622635149e408875ec1b95f87fffa67913537e7d7ed802
BLAKE2b-256 checksum
How to use checksums
c420ce6e50a83da473c60886e46e55b7deb76978bf48bf51d93561da6285d5ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-pp37-pypy37_pp73-macosx_10_9_x86_64.whl

Download URL zfec-1.5.7.4-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
Size 58.1 kB
Tags PyPy 3.7 PyPy 3.7 7.3 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
3a58a54193ff7bd17da22538de1286859c84081518436833649fd58e03ba1c8c
BLAKE2b-256 checksum
How to use checksums
a5e9b9cd18398c79cf2e3409569e94bf1f7491b29f7fb158a94ea69a974ecb9e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp312-cp312-win_amd64.whl

Download URL zfec-1.5.7.4-cp312-cp312-win_amd64.whl
Size 60.7 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
cc9ea245f468423bba08e241a945b459465edae076ed73c8e50af04631a96312
BLAKE2b-256 checksum
How to use checksums
c393eebef7f485b1adc8af8fe637b90c73046d6f098d404095c2892ce48db681
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp312-cp312-win32.whl

Download URL zfec-1.5.7.4-cp312-cp312-win32.whl
Size 59.1 kB
Tags CPython 3.12 Windows x86-32
SHA-256 checksum
How to use checksums
e5ab045bf4e39d84d55a394808403178ac5685f7d86e969957e1fb9c57dcea17
BLAKE2b-256 checksum
How to use checksums
42a37abc67d5681af1f2f8c1b9eb937e7e3e45c69e047e9b203d0ef8a857d481
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp312-cp312-musllinux_1_1_x86_64.whl

Download URL zfec-1.5.7.4-cp312-cp312-musllinux_1_1_x86_64.whl
Size 89.2 kB
Tags CPython 3.12 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
24f62c5802c9246280126d8ca2e2b63ab8715a5cf2a3ab376312498a07c547ec
BLAKE2b-256 checksum
How to use checksums
95b7df4a9fa216617e26594724d6201752f087fc375b888fb8b779d5870e9bdc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp312-cp312-musllinux_1_1_i686.whl

Download URL zfec-1.5.7.4-cp312-cp312-musllinux_1_1_i686.whl
Size 85.0 kB
Tags CPython 3.12 Linux musl 1.1+ x86-32
SHA-256 checksum
How to use checksums
5613eb59e38f3d43356bb14eb965f68e9c9c4166c8a9bf53e733603a5189b882
BLAKE2b-256 checksum
How to use checksums
e5e4559fcf00ecdc1bffed01acaa3e6991cdefa4a3f76b65ce4f73a9fcd96098
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL zfec-1.5.7.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 86.3 kB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
86ec158ed48d340e56308b9ec80360cb3143714216c7d1b4466aef2ef134011d
BLAKE2b-256 checksum
How to use checksums
3f15bda7a6454fa2cf7501330c3d254ff1b01bd4cab34c313dd1a2787040bcc8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl

Download URL zfec-1.5.7.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Size 83.0 kB
Tags CPython 3.12 Linux glibc 2.17+ x86-32 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
cf75b79c69835a2db4fbcaf66eb3e3e3fd2287843ddb226d175ba6f228eac4d4
BLAKE2b-256 checksum
How to use checksums
9e62848e6c7d9da49c475765e22dd261e12463aa461a71139f1df31be32aba08
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp312-cp312-macosx_11_0_arm64.whl

Download URL zfec-1.5.7.4-cp312-cp312-macosx_11_0_arm64.whl
Size 58.3 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
5fb30a93b45c4ffb732e7db66ce050d2a6155ca715251ef111704e36ef7bb17e
BLAKE2b-256 checksum
How to use checksums
1c37e967a7eebf409891e6dd2c5155d1c950881996fc148d881db2ddb2a4221f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp312-cp312-macosx_10_9_x86_64.whl

Download URL zfec-1.5.7.4-cp312-cp312-macosx_10_9_x86_64.whl
Size 58.7 kB
Tags CPython 3.12 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
cee15f67d902024760c23365ba7b0104e5a16f41ba0349a8e75f1c1b096c8511
BLAKE2b-256 checksum
How to use checksums
ae9e7d371e91ae6ecae536784ca6d3012fceb18fdc382470a5fee1b2087ba8f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp312-cp312-macosx_10_9_universal2.whl

Download URL zfec-1.5.7.4-cp312-cp312-macosx_10_9_universal2.whl
Size 69.6 kB
Tags CPython 3.12 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
88902dde0662ff9a28fb6d8024e9607754de686e39db51a6e92d8638d22699ee
BLAKE2b-256 checksum
How to use checksums
5afc9fa8a13d90eba1a9b5042e250cd836e5247335cad57fc45a1042ae560d84
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp311-cp311-win_amd64.whl

Download URL zfec-1.5.7.4-cp311-cp311-win_amd64.whl
Size 60.7 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
64da28c7f61f8fe8804c42c605700c30b75b945891a1dd0e1159bd9d191e9f00
BLAKE2b-256 checksum
How to use checksums
bbcb611b75a382943e1334523d14d974a709b3c5a0155aaae47abe7a7e8e3d5a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp311-cp311-win32.whl

Download URL zfec-1.5.7.4-cp311-cp311-win32.whl
Size 59.0 kB
Tags CPython 3.11 Windows x86-32
SHA-256 checksum
How to use checksums
ac7db89607d473128dd633be783ded3c91b348dc9fc5cdaa143d43ebc0513308
BLAKE2b-256 checksum
How to use checksums
dcfb66bdc0e6d114a51f096dad9cb23eabb8c0a1f235af85b4fa6e64da726741
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp311-cp311-musllinux_1_1_x86_64.whl

Download URL zfec-1.5.7.4-cp311-cp311-musllinux_1_1_x86_64.whl
Size 89.0 kB
Tags CPython 3.11 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
622ca638451eb48dca338d5af69c1fde3082b79c9f9a468ad69c587893c7a6de
BLAKE2b-256 checksum
How to use checksums
8d6165bac9ca53d48185476760d344c690dd56fc933231bc73830e5609b7730f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp311-cp311-musllinux_1_1_i686.whl

Download URL zfec-1.5.7.4-cp311-cp311-musllinux_1_1_i686.whl
Size 85.0 kB
Tags CPython 3.11 Linux musl 1.1+ x86-32
SHA-256 checksum
How to use checksums
96dc1a6aba0cfdc86bc6ec8e50bf70a8c5706f2195f517a2ac13a0ba3a91ce64
BLAKE2b-256 checksum
How to use checksums
33493958ece263f1a9bdd245f4bb301d90829c5d1736511aebbbd1ff3723c4ac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL zfec-1.5.7.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 86.1 kB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
a40e89c048dcaf8543ee35eda6f116f83e95a526842f18386a4d2901a3d40850
BLAKE2b-256 checksum
How to use checksums
cbc0da958eee4e073f1edf13b8295ccdace079c43fcdf3d1ff892f365317087f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl

Download URL zfec-1.5.7.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Size 82.9 kB
Tags CPython 3.11 Linux glibc 2.17+ x86-32 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
9d744e6d1e075af2491281a8af5f441aff2e6fe28835a1e30a76604c2e7a524d
BLAKE2b-256 checksum
How to use checksums
963081546558e24ff985ec4fb1c7d68d01a8e5b83fec8f250f5cd7d5864438c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp311-cp311-macosx_11_0_arm64.whl

Download URL zfec-1.5.7.4-cp311-cp311-macosx_11_0_arm64.whl
Size 58.2 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
31fe44a8bb561a70c471998e5690f78414ac6eb4e7b0f40f60493dfb0dd806cf
BLAKE2b-256 checksum
How to use checksums
f86d8e9bd2063bb6381dcf78e7ab352a16755a48d00767bd4c1ee8e78554961d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp311-cp311-macosx_10_9_x86_64.whl

Download URL zfec-1.5.7.4-cp311-cp311-macosx_10_9_x86_64.whl
Size 58.6 kB
Tags CPython 3.11 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
96da593f37eb95472e2e9cf7acc19270d3af04c7fca9e63dcb3c209ab8c6bb3d
BLAKE2b-256 checksum
How to use checksums
6c839f60d499410e6155b3bd1dd551866d240ab1349e053c4a2b183590b9546d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp311-cp311-macosx_10_9_universal2.whl

Download URL zfec-1.5.7.4-cp311-cp311-macosx_10_9_universal2.whl
Size 69.5 kB
Tags CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
e73740a59a5be468e79f8df0e49bcadb4a37af0d7b4d4ae817031d6e8870bee2
BLAKE2b-256 checksum
How to use checksums
c8de1ec596a0963c40f3e762d52e5bc2da9ef7cb43122d9c7aaabbcaed968c61
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp310-cp310-win_amd64.whl

Download URL zfec-1.5.7.4-cp310-cp310-win_amd64.whl
Size 60.7 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
91fb42093e66303e01e4fb2356092565d767f39edf7f63a1a9023fc6dfece615
BLAKE2b-256 checksum
How to use checksums
cf28a95834adac9ff19777008ee70c5c70be4132596aa020c46b818d324bd53a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp310-cp310-win32.whl

Download URL zfec-1.5.7.4-cp310-cp310-win32.whl
Size 59.0 kB
Tags CPython 3.10 Windows x86-32
SHA-256 checksum
How to use checksums
08dcd7f53de549b1f6bce9a4d1c76d5305e9f31c2d1b8b7b323b62fbe3ef28c0
BLAKE2b-256 checksum
How to use checksums
2aea0ef24931c3261ce81dec48c723690b05608b3470ca479e9802b94ec442cb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp310-cp310-musllinux_1_1_x86_64.whl

Download URL zfec-1.5.7.4-cp310-cp310-musllinux_1_1_x86_64.whl
Size 88.0 kB
Tags CPython 3.10 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
7a283f1dedf9b5bf673f826143a575eee1dc39617bd585fac16dfad1327be413
BLAKE2b-256 checksum
How to use checksums
4d496511499287c5f0c895a26b249ad580a6162ece9ab94bcb3bd2693907cb3d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp310-cp310-musllinux_1_1_i686.whl

Download URL zfec-1.5.7.4-cp310-cp310-musllinux_1_1_i686.whl
Size 84.0 kB
Tags CPython 3.10 Linux musl 1.1+ x86-32
SHA-256 checksum
How to use checksums
7c463c227e8c203a718507f20d999270e2789e13765aa85988f3bc06e837bb16
BLAKE2b-256 checksum
How to use checksums
94af62ff2d0215ebc9d4e21adf37acdc03b3fd39c2bfc37f8f5ee0a671ad1079
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL zfec-1.5.7.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 84.3 kB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
ec76302d0e37b95da0d1a9252b147f166a5d0d21d88ab6332290d597ec35ad22
BLAKE2b-256 checksum
How to use checksums
f91a3de9198453de8355e95c5009fc64c37a01317d5ae953b6f62075a01fd6e1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl

Download URL zfec-1.5.7.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Size 81.4 kB
Tags CPython 3.10 Linux glibc 2.17+ x86-32 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
d88415a53747811fd6edeed34813907e151a34f775b6c71d248ab2008c8607fa
BLAKE2b-256 checksum
How to use checksums
e871c7415bfa885ec833996688bdbf9f47fa14d589b1f65089af890f9431ff9e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp310-cp310-macosx_11_0_arm64.whl

Download URL zfec-1.5.7.4-cp310-cp310-macosx_11_0_arm64.whl
Size 58.2 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
36822b627760f8b227f5fde336848eb2f74bd80da67b8235d1b7d2ee1e49a286
BLAKE2b-256 checksum
How to use checksums
338a18b373b6e310b0fd483290d4650ceb18a37dc81e416936bf01172e6a9787
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp310-cp310-macosx_10_9_x86_64.whl

Download URL zfec-1.5.7.4-cp310-cp310-macosx_10_9_x86_64.whl
Size 58.6 kB
Tags CPython 3.10 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
1eaa3abb66a41e05825b57d33a62ad64ddd9dc392757b029007178f38346deea
BLAKE2b-256 checksum
How to use checksums
96fd076d6e8aa29d8c5ed8766a82ed12648d51a16a7a359d3c9eba4d1c0f2e9e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp310-cp310-macosx_10_9_universal2.whl

Download URL zfec-1.5.7.4-cp310-cp310-macosx_10_9_universal2.whl
Size 69.4 kB
Tags CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
1f26cfbd74704e55f93cef351a6f9d86a3d4f8cc5ebdfd7def1edd6e685105a9
BLAKE2b-256 checksum
How to use checksums
61043e6973e1e5b6107bfdae61f6020c96a77c30df7e959f53bd771aab96e627
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp39-cp39-win_amd64.whl

Download URL zfec-1.5.7.4-cp39-cp39-win_amd64.whl
Size 60.7 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
4a3526f0b05dd9222018d15a40671a3f7beb6fd04f5dc4374ba24a0f4ebaf48d
BLAKE2b-256 checksum
How to use checksums
ed7afab6ced67bca2cac29b034f8b3a7650105081df8df42c9a6d907a23b6e92
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp39-cp39-win32.whl

Download URL zfec-1.5.7.4-cp39-cp39-win32.whl
Size 59.0 kB
Tags CPython 3.9 Windows x86-32
SHA-256 checksum
How to use checksums
17a440835c4d891d24962817b4b8bb60489260f63f6970ff784ffc1191f9269e
BLAKE2b-256 checksum
How to use checksums
615506e8f4f8dcf71e1f9274427c5fdc522b6bf1ea29b05bf1f3b81e558447ff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp39-cp39-musllinux_1_1_x86_64.whl

Download URL zfec-1.5.7.4-cp39-cp39-musllinux_1_1_x86_64.whl
Size 87.8 kB
Tags CPython 3.9 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
15ad8a6623d06b038b83995bee5080c5efacdee6040b214610e9fd7f350fcc46
BLAKE2b-256 checksum
How to use checksums
7697b7e040d9fb5a5c27d7f8d7cb0edae717995129b8a9aafa773263367c5508
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp39-cp39-musllinux_1_1_i686.whl

Download URL zfec-1.5.7.4-cp39-cp39-musllinux_1_1_i686.whl
Size 83.8 kB
Tags CPython 3.9 Linux musl 1.1+ x86-32
SHA-256 checksum
How to use checksums
3cce9a6ecda727a388e859e0fb3f0b401ed5c90094ca94981d84dbb92cf3fc1a
BLAKE2b-256 checksum
How to use checksums
480fea9835f85793c0453b06058956ea6e8e7c62346f530568c707aaef26b18e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL zfec-1.5.7.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 84.1 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
bd2549bb7988f803f63e0b4dcdada2f8b05e5ba1d78c93eda521dd6b7df9744f
BLAKE2b-256 checksum
How to use checksums
e617e486b112f67c940cc0117fb43a18e9cfcfa46183dd83270873884e424d19
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl

Download URL zfec-1.5.7.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Size 81.2 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-32 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
35a0519d2af5bf502268b04537f6c8759ffa8eef828a7ebfd4ae27aa20113ab0
BLAKE2b-256 checksum
How to use checksums
c4128ca104001f92bcb2297140c9b9eea4123a65d15bbdab1b4284c14e2a608d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp39-cp39-macosx_11_0_arm64.whl

Download URL zfec-1.5.7.4-cp39-cp39-macosx_11_0_arm64.whl
Size 58.2 kB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
79ca7b7c58de7ef3003da23c657bf8de6f4392e624dbcf236f600cf0371ebc86
BLAKE2b-256 checksum
How to use checksums
a7dffa3686e930c7477f3a756e6732164c31341ee5f2aa1e4f9c3c2699ede7d4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp39-cp39-macosx_10_9_x86_64.whl

Download URL zfec-1.5.7.4-cp39-cp39-macosx_10_9_x86_64.whl
Size 58.6 kB
Tags CPython 3.9 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
88349704d295e7c22567446f6d7ba7cf756b977b0b99fed1c37c4ff432e5abf7
BLAKE2b-256 checksum
How to use checksums
5bd51811f0815b702095e8bcde4151500b72a5391d0fd1743570669657d8f727
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp39-cp39-macosx_10_9_universal2.whl

Download URL zfec-1.5.7.4-cp39-cp39-macosx_10_9_universal2.whl
Size 69.4 kB
Tags CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
0e1d656c6600f8d8e6a3d6c03068af0e8c349bbe0800ea7b26d6b7aa84061adb
BLAKE2b-256 checksum
How to use checksums
858b99c0688fd18ad2124f2c3ed2ae1c8451ef83f5c19511631c5a6fc48e3c2c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp38-cp38-win_amd64.whl

Download URL zfec-1.5.7.4-cp38-cp38-win_amd64.whl
Size 60.7 kB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
0740d89f2260bc85842d44bbb50b39ccc2f7df86f8ffb21a5cc5656cd45c82e9
BLAKE2b-256 checksum
How to use checksums
4fc60de280b108fabbba57ab92509df72c39584b5ef85b65665016a762333c12
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp38-cp38-win32.whl

Download URL zfec-1.5.7.4-cp38-cp38-win32.whl
Size 59.0 kB
Tags CPython 3.8 Windows x86-32
SHA-256 checksum
How to use checksums
23577f8db99f255084142d9ce553eff12f9b3cacbaae08ba71a6d639a679b07a
BLAKE2b-256 checksum
How to use checksums
77926005a56273a6663cd19461d0aa5cd0a55edf3541acd328a84a9a33f434fc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp38-cp38-musllinux_1_1_x86_64.whl

Download URL zfec-1.5.7.4-cp38-cp38-musllinux_1_1_x86_64.whl
Size 87.7 kB
Tags CPython 3.8 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
6842be5dda2141c6145e1543d88bb0a4ceeae5d26600984cc5d5e7573fcdb8b1
BLAKE2b-256 checksum
How to use checksums
4393043efe976ad02b09f203e9aebb4e35d24b5c1727bcd09035d0c10688bbc3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp38-cp38-musllinux_1_1_i686.whl

Download URL zfec-1.5.7.4-cp38-cp38-musllinux_1_1_i686.whl
Size 83.7 kB
Tags CPython 3.8 Linux musl 1.1+ x86-32
SHA-256 checksum
How to use checksums
0cdead7c0eea420659ea6745d8f186487349aed37054268e94bcdf072af3ea06
BLAKE2b-256 checksum
How to use checksums
8867991f6fd3bd11a2238379cf7538128965902552113098b61487730af8e21d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL zfec-1.5.7.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 84.4 kB
Tags CPython 3.8 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
84b0f402f2c3abdb9390c48ae3f08272efa41e0bc00c13684f1bfc6f3d1c3d5f
BLAKE2b-256 checksum
How to use checksums
5aa786b91da999742e9c4767f22f601320bb5b9910ed73e7bf5ac8ee1c695f3f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl

Download URL zfec-1.5.7.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Size 81.5 kB
Tags CPython 3.8 Linux glibc 2.17+ x86-32 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
69284af164d19720bf380bce64a0fe2f229f26178c9a92fadd643ca1e7b77e81
BLAKE2b-256 checksum
How to use checksums
4b1b4b43977bd08f70d9975f086edcac97f737bde4c8c8219b84d6c6405afc1b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp38-cp38-macosx_11_0_arm64.whl

Download URL zfec-1.5.7.4-cp38-cp38-macosx_11_0_arm64.whl
Size 58.2 kB
Tags CPython 3.8 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
25bfe0c1f5a8decc6db6bd184d8c6adce02c47896dd372a67b381233a0736f4b
BLAKE2b-256 checksum
How to use checksums
03b1a3b845410a348f849c8532e4ae403444ab342902eabb72aa702f15b90a5a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp38-cp38-macosx_10_9_x86_64.whl

Download URL zfec-1.5.7.4-cp38-cp38-macosx_10_9_x86_64.whl
Size 58.6 kB
Tags CPython 3.8 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
7d84fc7227987ca164efd1e83631c8d66a8eb2260d7b415fc06758bf40a6dd8a
BLAKE2b-256 checksum
How to use checksums
472e5c152cfdb25ade3a701c3d43965f4af62c08712a57874731888163451a66
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release files / zfec-1.5.7.4-cp38-cp38-macosx_10_9_universal2.whl

Download URL zfec-1.5.7.4-cp38-cp38-macosx_10_9_universal2.whl
Size 69.4 kB
Tags CPython 3.8 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
df6157e3ed242b287dd81940cccbe7c3213857dfd258e781ec5ecd4594443a3e
BLAKE2b-256 checksum
How to use checksums
b0564f1fdaee1d06e3024f7581895722f956dfea19fd9f0d336805c6dd7fa3e6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.6

Release history Release notifications | RSS feed

This release

1.5.7.4 This release

58 release files

1.5.5

57 release files

1.5.4

51 release files

1.5.3

1 release file

1.5.2

1 release file

1.5.1

1 release file

1.5.0

1 release file

1.4.24

1 release file

1.4.23

1 release file

1.4.22

1 release file

1.4.21

1 release file

1.4.20

1 release file

1.4.17

1 release file

1.4.16

1 release file

1.4.15

1 release file

1.4.14

1 release file

1.4.13

1 release file

1.4.12

1 release file

1.4.11

1 release file

1.4.9

1 release file

1.4.8

1 release file

1.4.7

1 release file

1.4.6

1 release file

1.4.5

1 release file

1.4.4

1 release file

1.4.3

1 release file

1.4.2

3 release files

1.4.1

2 release files

1.4.0

1 release file

1.3.5

1 release file

1.3.4-3

1 release file

1.3.3

1 release file

1.3.1

1 release file

1.3.0

1 release file

1.2.0

1 release file

1.1

1 release file

1.0.4

1 release file

1.0.3

1 release file

1.0.1

1 release file

1.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page