Skip to main content
Files added late

16 files were added to this release more than 14 days after its initial publication. Inspect the release files before installing.

https://travis-ci.org/spacy-io/cymem.svg?branch=master

Cython Memory Helper

cymem provides two small memory-management helpers for Cython. They make it easy to tie memory to a Python object’s life-cycle, so that the memory is freed when the object is garbage collected.

The most useful is cymem.Pool, which acts as a thin wrapper around the calloc function:

>>> from cymem.cymem cimport Pool
>>> cdef Pool mem = Pool()
>>> data1 = <int*>mem.alloc(10, sizeof(int))
>>> data2 = <float*>mem.alloc(12, sizeof(float))

The Pool object saves the memory addresses internally, and frees them when the object is garbage collected. Typically you’ll attach the Pool to some cdef’d class. This is particularly handy for deeply nested structs, which have complicated initialization functions. Just pass the pool object into the initializer, and you don’t have to worry about freeing your struct at all — all of the calls to Pool.alloc will be automatically freed when the Pool expires.

Installation

Installation is via pip, and requires Cython.

pip install cymem

Example Use Case: An array of structs

Let’s say we want a sequence of sparse matrices. We need fast access, and a Python list isn’t performing well enough. So, we want a C-array or C++ vector, which means we need the sparse matrix to be a C-level struct — it can’t be a Python class. We can write this easily enough in Cython:

"""Example without Cymem

To use an array of structs, we must carefully walk the data structure when
we deallocate it.
"""

from libc.stdlib cimport calloc, free

cdef struct SparseRow:
    size_t length
    size_t* indices
    double* values

cdef struct SparseMatrix:
    size_t length
    SparseRow* rows

cdef class MatrixArray:
    cdef size_t length
    cdef SparseMatrix** matrices

    def __cinit__(self, list py_matrices):
        self.length = 0
        self.matrices = NULL

    def __init__(self, list py_matrices):
        self.length = len(py_matrices)
        self.matrices = <SparseMatrix**>calloc(len(py_matrices), sizeof(SparseMatrix*))

        for i, py_matrix in enumerate(py_matrices):
            self.matrices[i] = sparse_matrix_init(py_matrix)

    def __dealloc__(self):
        for i in range(self.length):
            sparse_matrix_free(self.matrices[i])
        free(self.matrices)


cdef SparseMatrix* sparse_matrix_init(list py_matrix) except NULL:
    sm = <SparseMatrix*>calloc(1, sizeof(SparseMatrix))
    sm.length = len(py_matrix)
    sm.rows = <SparseRow*>calloc(sm.length, sizeof(SparseRow))
    cdef size_t i, j
    cdef dict py_row
    cdef size_t idx
    cdef double value
    for i, py_row in enumerate(py_matrix):
        sm.rows[i].length = len(py_row)
        sm.rows[i].indices = <size_t*>calloc(sm.rows[i].length, sizeof(size_t))
        sm.rows[i].values = <double*>calloc(sm.rows[i].length, sizeof(double))
        for j, (idx, value) in enumerate(py_row.items()):
            sm.rows[i].indices[j] = idx
            sm.rows[i].values[j] = value
    return sm


cdef void* sparse_matrix_free(SparseMatrix* sm) except *:
    cdef size_t i
    for i in range(sm.length):
        free(sm.rows[i].indices)
        free(sm.rows[i].values)
    free(sm.rows)
    free(sm)

We wrap the data structure in a Python ref-counted class at as low a level as we can, given our performance constraints. This allows us to allocate and free the memory in the __cinit__ and __dealloc__ Cython special methods.

However, it’s very easy to make mistakes when writing the __dealloc__ and sparse_matrix_free functions, leading to memory leaks. cymem prevents you from writing these deallocators at all. Instead, you write as follows:

"""Example with Cymem.

Memory allocation is hidden behind the Pool class, which remembers the
addresses it gives out.  When the Pool object is garbage collected, all of
its addresses are freed.

We don't need to write MatrixArray.__dealloc__ or sparse_matrix_free,
eliminating a common class of bugs.
"""
from cymem.cymem cimport Pool

cdef struct SparseRow:
    size_t length
    size_t* indices
    double* values

cdef struct SparseMatrix:
    size_t length
    SparseRow* rows


cdef class MatrixArray:
    cdef size_t length
    cdef SparseMatrix** matrices
    cdef Pool mem

    def __cinit__(self, list py_matrices):
        self.mem = None
        self.length = 0
        self.matrices = NULL

    def __init__(self, list py_matrices):
        self.mem = Pool()
        self.length = len(py_matrices)
        self.matrices = <SparseMatrix**>self.mem.alloc(self.length, sizeof(SparseMatrix*))
        for i, py_matrix in enumerate(py_matrices):
            self.matrices[i] = sparse_matrix_init(self.mem, py_matrix)

cdef SparseMatrix* sparse_matrix_init_cymem(Pool mem, list py_matrix) except NULL:
    sm = <SparseMatrix*>mem.alloc(1, sizeof(SparseMatrix))
    sm.length = len(py_matrix)
    sm.rows = <SparseRow*>mem.alloc(sm.length, sizeof(SparseRow))
    cdef size_t i, j
    cdef dict py_row
    cdef size_t idx
    cdef double value
    for i, py_row in enumerate(py_matrix):
        sm.rows[i].length = len(py_row)
        sm.rows[i].indices = <size_t*>mem.alloc(sm.rows[i].length, sizeof(size_t))
        sm.rows[i].values = <double*>mem.alloc(sm.rows[i].length, sizeof(double))
        for j, (idx, value) in enumerate(py_row.items()):
            sm.rows[i].indices[j] = idx
            sm.rows[i].values[j] = value
    return sm

All that the Pool class does is remember the addresses it gives out. When the MatrixArray object is garbage-collected, the Pool object will also be garbage collected, which triggers a call to Pool.__dealloc__. The Pool then frees all of its addresses. This saves you from walking back over your nested data structures to free them, eliminating a common class of errors.

Metadata

Release files for cymem 1.31.2

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

Files added late

16 files were uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release files before installing.

Source distribution (sdist)

Source distribution for cymem 1.31.2
File Size Uploaded
cymem-1.31.2.tar.gz 33.8 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for cymem 1.31.2
File
cymem-1.31.2-cp37-cp37m-win_amd64.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-64 Details
cymem-1.31.2-cp37-cp37m-win32.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-32 Details
cymem-1.31.2-cp36-cp36m-win_amd64.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-64 Details
cymem-1.31.2-cp36-cp36m-win32.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-32 Details
cymem-1.31.2-cp36-cp36m-manylinux1_x86_64.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-64 Details
cymem-1.31.2-cp36-cp36m-manylinux1_i686.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-32 Details
cymem-1.31.2-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl CPython 3.6 CPython 3.6 pymalloc macOS 10.9+ x86-64, macOS 10.9+ Intel (x86-64, i386), macOS 10.6+ Intel (x86-64, i386), macOS 10.10+ x86-64, macOS 10.10+ Intel (x86-64, i386) Details
cymem-1.31.2-cp35-none-win_amd64.whl CPython 3.5 none Windows x86-64 Details
cymem-1.31.2-cp35-cp35m-win_amd64.whl CPython 3.5 CPython 3.5 pymalloc Windows x86-64 Details
cymem-1.31.2-cp35-cp35m-win32.whl CPython 3.5 CPython 3.5 pymalloc Windows x86-32 Details
cymem-1.31.2-cp35-cp35m-manylinux1_x86_64.whl CPython 3.5 CPython 3.5 pymalloc Linux glibc 2.5+ x86-64 Details
cymem-1.31.2-cp35-cp35m-manylinux1_i686.whl CPython 3.5 CPython 3.5 pymalloc Linux glibc 2.5+ x86-32 Details
cymem-1.31.2-cp35-cp35m-macosx_10_6_intel.whl CPython 3.5 CPython 3.5 pymalloc macOS 10.6+ Intel (x86-64, i386) Details
cymem-1.31.2-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl CPython 3.5 CPython 3.5 pymalloc macOS 10.6+ Intel (x86-64, i386), macOS 10.10+ x86-64, macOS 10.10+ Intel (x86-64, i386), macOS 10.9+ x86-64, macOS 10.9+ Intel (x86-64, i386) Details
cymem-1.31.2-cp34-none-win_amd64.whl CPython 3.4 none Windows x86-64 Details
cymem-1.31.2-cp34-cp34m-manylinux1_x86_64.whl CPython 3.4 CPython 3.4 pymalloc Linux glibc 2.5+ x86-64 Details
cymem-1.31.2-cp34-cp34m-macosx_10_6_intel.whl CPython 3.4 CPython 3.4 pymalloc macOS 10.6+ Intel (x86-64, i386) Details
cymem-1.31.2-cp27-none-win_amd64.whl CPython 2.7 none Windows x86-64 Details
cymem-1.31.2-cp27-cp27mu-manylinux1_x86_64.whl CPython 2.7 CPython 2.7 pymalloc wide-unicode Linux glibc 2.5+ x86-64 Details
cymem-1.31.2-cp27-cp27mu-manylinux1_i686.whl CPython 2.7 CPython 2.7 pymalloc wide-unicode Linux glibc 2.5+ x86-32 Details
cymem-1.31.2-cp27-cp27m-win_amd64.whl CPython 2.7 CPython 2.7 pymalloc Windows x86-64 Details
cymem-1.31.2-cp27-cp27m-win32.whl CPython 2.7 CPython 2.7 pymalloc Windows x86-32 Details
cymem-1.31.2-cp27-cp27m-manylinux1_x86_64.whl CPython 2.7 CPython 2.7 pymalloc Linux glibc 2.5+ x86-64 Details
cymem-1.31.2-cp27-cp27m-manylinux1_i686.whl CPython 2.7 CPython 2.7 pymalloc Linux glibc 2.5+ x86-32 Details
cymem-1.31.2-cp27-cp27m-macosx_10_6_intel.whl CPython 2.7 CPython 2.7 pymalloc macOS 10.6+ Intel (x86-64, i386) Details
cymem-1.31.2-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl CPython 2.7 CPython 2.7 pymalloc macOS 10.6+ Intel (x86-64, i386), macOS 10.10+ x86-64, macOS 10.9+ x86-64, macOS 10.10+ Intel (x86-64, i386), macOS 10.9+ Intel (x86-64, i386) Details

Total release size: 860.5 kB

Release files / cymem-1.31.2.tar.gz

Download URL cymem-1.31.2.tar.gz
Size 33.8 kB
Tags Source
SHA-256 checksum
How to use checksums
f06d9b50da0474d7405674d8101c319d89a17d33792d6d429fe3d5c64f0d9df1
BLAKE2b-256 checksum
How to use checksums
f89e273fbea507de99166c11cd0cb3fde1ac01b5bc724d9a407a2f927ede91a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / cymem-1.31.2-cp37-cp37m-win_amd64.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL cymem-1.31.2-cp37-cp37m-win_amd64.whl
Size 27.7 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
e0a60d03f2b2656ecf13c717aa9ebc17878862027c549bbb1f7a25226dfc3297
BLAKE2b-256 checksum
How to use checksums
71ede4b520e832677381805000271268a9732a63ebbbbafe83a00939288c623d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/28.8.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.0

Release files / cymem-1.31.2-cp37-cp37m-win32.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL cymem-1.31.2-cp37-cp37m-win32.whl
Size 24.8 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
b8cf65f386caf97b953fc0b9d363e2e404591de672c7b468eba7483099d7f773
BLAKE2b-256 checksum
How to use checksums
e601bb68445db51aebb0a55b9b84ce35849b3eafb6095908908977231984c2b3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/28.8.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.0

Release files / cymem-1.31.2-cp36-cp36m-win_amd64.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL cymem-1.31.2-cp36-cp36m-win_amd64.whl
Size 27.8 kB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
7b6a1a17bab8af967e7cfb6b2ec5c5aa8650d0bce4f176cddbf7638e8e02c9e1
BLAKE2b-256 checksum
How to use checksums
92c4cb92b8a267c17c02245f720ced4220a775a5eda58a9fdf7a46caec4eba53
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/28.8.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.0

Release files / cymem-1.31.2-cp36-cp36m-win32.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL cymem-1.31.2-cp36-cp36m-win32.whl
Size 24.9 kB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
2957a6ccd96d48896c736014b96fae64164f9d18cf773b53cbdc1ea4eab7f4dc
BLAKE2b-256 checksum
How to use checksums
6a3e20fea39a67754da0e1c12c674fdc41344ac6291b83916108d8553b7a3847
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/28.8.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.0

Release files / cymem-1.31.2-cp36-cp36m-manylinux1_x86_64.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL cymem-1.31.2-cp36-cp36m-manylinux1_x86_64.whl
Size 21.3 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
d7ce7b63a74566490d4661d3934870741cd0e37c3543cdf73c09c79501f1cf8a
BLAKE2b-256 checksum
How to use checksums
a50fd29aa68c55db37844c77e7e96143bd96651fd0f4453c9f6ee043ac846b77
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/28.8.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.0

Release files / cymem-1.31.2-cp36-cp36m-manylinux1_i686.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL cymem-1.31.2-cp36-cp36m-manylinux1_i686.whl
Size 20.4 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
5f3fb50c7a8e6d7f599e569f1b705e41f9e2d550fad48e3a275b4f5450412216
BLAKE2b-256 checksum
How to use checksums
5ba93f7b43835a2c4d90eba9f5d69da05d14fae4aa38fefbd91855287c3ff807
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/28.8.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.0

Release files / cymem-1.31.2-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL cymem-1.31.2-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Size 33.9 kB
Tags CPython 3.6 CPython 3.6 pymalloc macOS 10.10+ Intel (x86-64, i386) macOS 10.10+ x86-64 macOS 10.6+ Intel (x86-64, i386) macOS 10.9+ Intel (x86-64, i386) macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
9709fa4b5caa2ebb05e9f12aab3388431970ae5f5a7dad3a7b9670874b469012
BLAKE2b-256 checksum
How to use checksums
58edfefb74be9a25a06d4c53eb4be97d445131e6dcfe55b7d948ac6a321c26d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/28.8.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.0

Release files / cymem-1.31.2-cp35-none-win_amd64.whl

Download URL cymem-1.31.2-cp35-none-win_amd64.whl
Size 25.2 kB
Tags CPython 3.5 Windows x86-64
SHA-256 checksum
How to use checksums
00bb3645dfb9a020d735ba3d6f822b04656388180588d8b2cebde967ee678bcc
BLAKE2b-256 checksum
How to use checksums
d22deebfedb0f54598f0edc70efe63b9ff37d9397b465bfa290c33eaf6f3cba7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / cymem-1.31.2-cp35-cp35m-win_amd64.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL cymem-1.31.2-cp35-cp35m-win_amd64.whl
Size 27.7 kB
Tags CPython 3.5 CPython 3.5 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
c178cb784531546ac6bbe2c9a4c4b077fd03d97c4a67c8ea84e1d2a50d872f23
BLAKE2b-256 checksum
How to use checksums
ddae501da78bb4b2a43148e816b4afdc7cf30d8b5b3a3d82e2fef7d378c361b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/28.8.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.0

Release files / cymem-1.31.2-cp35-cp35m-win32.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL cymem-1.31.2-cp35-cp35m-win32.whl
Size 24.9 kB
Tags CPython 3.5 CPython 3.5 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
23c20163e2e74c760259a7feee264b5eaf7879d7818ab13025b2be69d7b8b66a
BLAKE2b-256 checksum
How to use checksums
1c6ecc33b597fb269735668dcc1832239d597a580d65841f4c85e85165517e7e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/28.8.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.0

Release files / cymem-1.31.2-cp35-cp35m-manylinux1_x86_64.whl

Download URL cymem-1.31.2-cp35-cp35m-manylinux1_x86_64.whl
Size 70.9 kB
Tags CPython 3.5 CPython 3.5 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
4c5d9ca6ec706792b8d9b1faf6db77b95545c388c768b21d940f197aa7efbb7e
BLAKE2b-256 checksum
How to use checksums
b64339372a0bc24d336dc88b87262c30f09d0a2c759f32a2965f90fb56da46f1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / cymem-1.31.2-cp35-cp35m-manylinux1_i686.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL cymem-1.31.2-cp35-cp35m-manylinux1_i686.whl
Size 20.4 kB
Tags CPython 3.5 CPython 3.5 pymalloc Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
cfa8415504cd06f6bf93e3b7e2f014ee675a66a435dd47f8c70a21880ab92ed6
BLAKE2b-256 checksum
How to use checksums
866bfe9a26d589bfb4b89e026d85cc2bd8f1c03e07dd739815a6e6d98d4b88f2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/28.8.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.0

Release files / cymem-1.31.2-cp35-cp35m-macosx_10_6_intel.whl

Download URL cymem-1.31.2-cp35-cp35m-macosx_10_6_intel.whl
Size 22.6 kB
Tags CPython 3.5 CPython 3.5 pymalloc macOS 10.6+ Intel (x86-64, i386)
SHA-256 checksum
How to use checksums
0dd61d05977839a922c0d797c355b98949210575918b1743b41e38ae9fb2c3a7
BLAKE2b-256 checksum
How to use checksums
8c2335663f617afdd1cf77d2eaed8694cc45e6fd4fd58471f74d318076219751
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / cymem-1.31.2-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL cymem-1.31.2-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Size 33.9 kB
Tags CPython 3.5 CPython 3.5 pymalloc macOS 10.10+ Intel (x86-64, i386) macOS 10.10+ x86-64 macOS 10.6+ Intel (x86-64, i386) macOS 10.9+ Intel (x86-64, i386) macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
495bd2aaeb7650faa7c78089abd2d975194534462e1f76243b3bc8aa1d8aa202
BLAKE2b-256 checksum
How to use checksums
1597f3dc00cde25eb7e5b97d7dab724f92af30a04869481f9292b9b8cda2a418
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/28.8.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.0

Release files / cymem-1.31.2-cp34-none-win_amd64.whl

Download URL cymem-1.31.2-cp34-none-win_amd64.whl
Size 24.1 kB
Tags CPython 3.4 Windows x86-64
SHA-256 checksum
How to use checksums
4bc1056b52d959fcbb1e0f32ec84fa131754d6be1e36b65782c6ac86419f4bf3
BLAKE2b-256 checksum
How to use checksums
ab44f3af1d1a266e46c1eb5bc2efc6053f14d1571d335f72cec4b2a3aec0fce1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / cymem-1.31.2-cp34-cp34m-manylinux1_x86_64.whl

Download URL cymem-1.31.2-cp34-cp34m-manylinux1_x86_64.whl
Size 71.9 kB
Tags CPython 3.4 CPython 3.4 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
b38056efb99078b06c504adb5f03a8d9e822a5543451737b746028a71c4b1ac3
BLAKE2b-256 checksum
How to use checksums
b6890f4f338b405c0cc72fd46287f2a1047377062c81875e35a55dadea361877
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / cymem-1.31.2-cp34-cp34m-macosx_10_6_intel.whl

Download URL cymem-1.31.2-cp34-cp34m-macosx_10_6_intel.whl
Size 22.5 kB
Tags CPython 3.4 CPython 3.4 pymalloc macOS 10.6+ Intel (x86-64, i386)
SHA-256 checksum
How to use checksums
daa6003fcc199752ab703142021cff74774872a932303b240dc0ea177adf295d
BLAKE2b-256 checksum
How to use checksums
e2b4d20597d322b62fefea6a77633d09e03083ef1942ad9e25a6e16808f576c8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / cymem-1.31.2-cp27-none-win_amd64.whl

Download URL cymem-1.31.2-cp27-none-win_amd64.whl
Size 23.6 kB
Tags CPython 2.7 Windows x86-64
SHA-256 checksum
How to use checksums
50292f4dd0d950a8698bae27d71efe59da7ff08e591b735e08b658aae42c4745
BLAKE2b-256 checksum
How to use checksums
39be896063d10e227201760cdd05e6dd41ae6c87d2c528d74b6c43b491fc1a8f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / cymem-1.31.2-cp27-cp27mu-manylinux1_x86_64.whl

Download URL cymem-1.31.2-cp27-cp27mu-manylinux1_x86_64.whl
Size 66.0 kB
Tags CPython 2.7 CPython 2.7 pymalloc wide-unicode Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
944af97d4d34a2470b5199f1c31d2dfc79cdec7bd7a41354d839a8ab87fdfaa6
BLAKE2b-256 checksum
How to use checksums
b7a276d5031797be8a7881537f1dd658142f993f6a18f0e946caa8ee20b7a2fa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / cymem-1.31.2-cp27-cp27mu-manylinux1_i686.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL cymem-1.31.2-cp27-cp27mu-manylinux1_i686.whl
Size 19.7 kB
Tags CPython 2.7 CPython 2.7 pymalloc wide-unicode Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
043994a622efba3a79ed1707c0279d85f25bdf9a615c2709561790b659795375
BLAKE2b-256 checksum
How to use checksums
b2c93be30f84116d4b15de2371b265b72cac4ab8f0359d875f7d09f721cb439b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/28.8.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.0

Release files / cymem-1.31.2-cp27-cp27m-win_amd64.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL cymem-1.31.2-cp27-cp27m-win_amd64.whl
Size 26.5 kB
Tags CPython 2.7 CPython 2.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
c0963ec0e81adc95334d6f75c9ce5084ba7b813b7d515470a753ec57f76db6d5
BLAKE2b-256 checksum
How to use checksums
36b23e57f9c19f251ecdc239beb8de2ac1ef165bbb703451e9742ef72e2429d7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/28.8.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.0

Release files / cymem-1.31.2-cp27-cp27m-win32.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL cymem-1.31.2-cp27-cp27m-win32.whl
Size 24.2 kB
Tags CPython 2.7 CPython 2.7 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
cabc0aeb58a451627ef07beac16dd28a1a09a4dd554df9f9dd0a76a48a8454e0
BLAKE2b-256 checksum
How to use checksums
6c716d6b86935dc5df1bcd3169e8c0eb47ad2483956f159bbac4051dfc7bb716
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/28.8.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.0

Release files / cymem-1.31.2-cp27-cp27m-manylinux1_x86_64.whl

Download URL cymem-1.31.2-cp27-cp27m-manylinux1_x86_64.whl
Size 66.0 kB
Tags CPython 2.7 CPython 2.7 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
616d06333f46dd03c128d97912d361183fc02249e6420a7b7907b41214c51562
BLAKE2b-256 checksum
How to use checksums
e2efe1ebaf55e478e1d34c6ac9b0d2fa8678e180542d3bc9398af9e95b546df1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / cymem-1.31.2-cp27-cp27m-manylinux1_i686.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL cymem-1.31.2-cp27-cp27m-manylinux1_i686.whl
Size 19.6 kB
Tags CPython 2.7 CPython 2.7 pymalloc Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
b5aceab17228dc6c6d126eb18e2f7801bcb5293eee719a1a240636c6cca970f0
BLAKE2b-256 checksum
How to use checksums
88ff1203e9a1fa15a33a5823e5333151d35e5395617ce1cf4a26045782a138a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/28.8.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.0

Release files / cymem-1.31.2-cp27-cp27m-macosx_10_6_intel.whl

Download URL cymem-1.31.2-cp27-cp27m-macosx_10_6_intel.whl
Size 22.1 kB
Tags CPython 2.7 CPython 2.7 pymalloc macOS 10.6+ Intel (x86-64, i386)
SHA-256 checksum
How to use checksums
b6513b2926c60d641f159e79e6fb16460dfb50ebcce31a5af0370c51837c7efc
BLAKE2b-256 checksum
How to use checksums
a241dc242f063af9aa284089d2a1f5da7d72d2169080651dfdec58f4db162f2b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / cymem-1.31.2-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL cymem-1.31.2-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Size 34.0 kB
Tags CPython 2.7 CPython 2.7 pymalloc macOS 10.10+ Intel (x86-64, i386) macOS 10.10+ x86-64 macOS 10.6+ Intel (x86-64, i386) macOS 10.9+ Intel (x86-64, i386) macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
7b2e8600bc6c2d005f8cf47ac5fc99eee45df82c8c71677fb075ca6c2c8ca16b
BLAKE2b-256 checksum
How to use checksums
7bb5adef900a23b3e80ddd0042dd1198e9282fb70f2bc1d0754ee4db85b4ed03
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/28.8.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.0
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