Skip to main content

frozendict

Table of Contents

Introduction

Welcome, fellow programmer, to the house of frozendict and deepfreeze!

frozendict is a simple immutable dictionary. It's fast as dict, and sometimes faster!

Unlike other similar implementations, immutability is guaranteed: you can't change the internal variables of the class, and they are all immutable objects. Reinvoking __init__ does not alter the object.

The API is the same as dict, without methods that can change the immutability. So it supports also fromkeys, unlike other implementations. Furthermore, it can be pickled, unpickled and have a hash, if all values are hashable.

You can also add any dict to a frozendict using the | operator. The result is a new frozendict.

Install

You can install frozendict by simply typing in a command line:

pip install frozendict

The C Extension is optional by default from version 2.3.5. You can make it mandatory using:

CIBUILDWHEEL=1 pip install frozendict

On the contrary, if you want the pure py implementation:

FROZENDICT_PURE_PY=1 pip install frozendict

API

frozendict API

The API is the same of dict of Python 3.10, without the methods and operands which alter the map. Additionally, frozendict supports these methods:

__hash__()

If all the values of the frozendict are hashable, returns a hash, otherwise raises a TypeError.

set(key, value)

It returns a new frozendict. If key is already in the original frozendict, the new one will have it with the new value associated. Otherwise, the new frozendict will contain the new (key, value) item.

delete(key)

It returns a new frozendict without the item corresponding to the key. If the key is not present, a KeyError is raised.

setdefault(key[, default])

If key is already in frozendict, the object itself is returned unchanged. Otherwise, the new frozendict will contain the new (key, default) item. The parameter default defaults to None.

key([index])

It returns the key at the specified index (determined by the insertion order). If index is not passed, it defaults to 0. If the index is negative, the position will be the size of the frozendict + index

value([index])

Same as key(index), but it returns the value at the given index.

item([index])

Same as key(index), but it returns a tuple with (key, value) at the given index.

deepfreeze API

The frozendict module has also these static methods:

frozendict.deepfreeze(o, custom_converters = None, custom_inverse_converters = None)

Converts the object and all the objects nested in it, into their immutable counterparts.

The conversion map is in getFreezeConversionMap().

You can register a new conversion using register() You can also pass a map of custom converters with custom_converters and a map of custom inverse converters with custom_inverse_converters, without using register().

By default, if the type is not registered and has a __dict__ attribute, it's converted to the frozendict of that __dict__.

This function assumes that hashable == immutable (that is not always true).

This function uses recursion, with all the limits of recursions in Python.

Where is a good old tail call when you need it?

frozendict.register(to_convert, converter, *, inverse = False)

Adds a converter for a type to_convert. converter must be callable. The new converter will be used by deepfreeze() and has precedence over any previous converter.

If to_covert has already a converter, a FreezeWarning is raised.

If inverse is True, the conversion is considered from an immutable type to a mutable one. This make it possible to convert mutable objects nested in the registered immutable one.

frozendict.unregister(type, inverse = False)

Unregister a type from custom conversion. If inverse is True, the unregistered conversion is an inverse conversion (see register()).

Examples

frozendict examples

from frozendict import frozendict

fd = frozendict(Guzzanti = "Corrado", Hicks = "Bill")

print(fd)
# frozendict({'Guzzanti': 'Corrado', 'Hicks': 'Bill'})

frozendict({"Guzzanti": "Corrado", "Hicks": "Bill"})
# frozendict({'Guzzanti': 'Corrado', 'Hicks': 'Bill'})

hash(fd)
# 5833699487320513741

fd_unhashable = frozendict({1: []})
hash(fd_unhashable)
# TypeError: Not all values are hashable.

frozendict({frozendict(nested = 4, key = 2): 42})
# frozendict({frozendict({'nested': 4, 'key': 2}): 42})

fd | {1: 2}
# frozendict({'Guzzanti': 'Corrado', 'Hicks': 'Bill', 1: 2})

fd.set(1, 2)
# frozendict.frozendict({'Guzzanti': 'Corrado', 'Hicks': 'Bill', 1: 2})

fd.set("Guzzanti", "Sabina")
# frozendict.frozendict({'Guzzanti': 'Sabina', 'Hicks': 'Bill'})

fd.delete("Guzzanti")
# frozendict.frozendict({'Hicks': 'Bill'})

fd.setdefault("Guzzanti", "Sabina")
# frozendict.frozendict({'Guzzanti': 'Corrado', 'Hicks': 'Bill'})

fd.setdefault(1, 2)
# frozendict.frozendict({'Guzzanti': 'Corrado', 'Hicks': 'Bill', 1: 2})

fd.key()
# 'Guzzanti'

fd.value(1)
# 'Bill'

fd.item(-1)
# (1, 2)

print(fd["Guzzanti"])
# Corrado

fd["Brignano"]
# KeyError: 'Brignano'

len(fd)
# 2

"Guzzanti" in fd
# True

"Guzzanti" not in fd
# False

"Brignano" in fd
# False

fd5 = frozendict(fd)
id_fd5 = id(fd5)
fd5 |= {1: 2}
fd5
# frozendict.frozendict({'Guzzanti': 'Corrado', 'Hicks': 'Bill', 1: 2})
id(fd5) != id_fd5
# True

fd2 = fd.copy()
fd2 == fd
# True

fd3 = frozendict(fd)
fd3 == fd
# True

fd4 = frozendict({"Hicks": "Bill", "Guzzanti": "Corrado"})

print(fd4)
# frozendict({'Hicks': 'Bill', 'Guzzanti': 'Corrado'})

fd4 == fd
# True

import pickle
fd_unpickled = pickle.loads(pickle.dumps(fd))
print(fd_unpickled)
# frozendict({'Guzzanti': 'Corrado', 'Hicks': 'Bill'})
fd_unpickled == fd
# True

frozendict(Guzzanti="Corrado", Hicks="Bill")
# frozendict({'Guzzanti': 'Corrado', 'Hicks': 'Bill'}

fd.get("Guzzanti")
# 'Corrado'

print(fd.get("Brignano"))
# None

tuple(fd.keys())
# ('Guzzanti', 'Hicks')

tuple(fd.values())
# ('Corrado', 'Bill')

tuple(fd.items())
# (('Guzzanti', 'Corrado'), ('Hicks', 'Bill'))

frozendict.fromkeys(["Corrado", "Sabina"], "Guzzanti")
# frozendict({'Corrado': 'Guzzanti', 'Sabina': 'Guzzanti'})

iter(fd)
# <dict_keyiterator object at 0x7feb75c49188>

fd["Guzzanti"] = "Caterina"
# TypeError: 'frozendict' object doesn't support item assignment

deepfreeze examples

import frozendict as cool

from frozendict import frozendict
from array import array
from collections import OrderedDict
from types import MappingProxyType

class A:
    def __init__(self, x):
        self.x = x

a = A(3)
        
o = {"x": [
    5, 
    frozendict(y = {5, "b", memoryview(b"b")}), 
    array("B", (0, 1, 2)), 
    OrderedDict(a=bytearray(b"a")),
    MappingProxyType({2: []}),
    a
]}

cool.deepfreeze(o)
# frozendict(x = (
#     5, 
#     frozendict(y = frozenset({5, "b", memoryview(b"b")})), 
#     (0, 1, 2), 
#     frozendict(a = b'a'),
#     MappingProxyType({2: ()}),
#     frozendict(x = 3),
# ))

Building

You can build frozendict directly from the code, using

python3 setup.py bdist_wheel

The C Extension is optional by default from version 2.3.5. You can make it mandatory by passing the environment variable CIBUILDWHEEL with value 1

On the contrary, if you want the pure py implementation, you can pass the env var FROZENDICT_PURE_PY with value 1

Benchmarks

Some benchmarks between dict and frozendict[1]:

################################################################################
////////////////////////////////////////////////////////////////////////////////
Name: `constructor(d)`;         Size:    5; Keys: str; Type:       dict; Time: 8.02e-08; Sigma: 4e-09
Name: `constructor(d)`;         Size:    5; Keys: str; Type: frozendict; Time: 8.81e-08; Sigma: 3e-09
////////////////////////////////////////////////////////////////////////////////
Name: `constructor(d)`;         Size:    5; Keys: int; Type:       dict; Time: 7.96e-08; Sigma: 5e-09
Name: `constructor(d)`;         Size:    5; Keys: int; Type: frozendict; Time: 8.97e-08; Sigma: 2e-09
////////////////////////////////////////////////////////////////////////////////
Name: `constructor(d)`;         Size: 1000; Keys: str; Type:       dict; Time: 6.38e-06; Sigma: 9e-08
Name: `constructor(d)`;         Size: 1000; Keys: str; Type: frozendict; Time: 6.21e-06; Sigma: 2e-07
////////////////////////////////////////////////////////////////////////////////
Name: `constructor(d)`;         Size: 1000; Keys: int; Type:       dict; Time: 3.49e-06; Sigma: 3e-07
Name: `constructor(d)`;         Size: 1000; Keys: int; Type: frozendict; Time: 3.48e-06; Sigma: 2e-07
################################################################################
////////////////////////////////////////////////////////////////////////////////
Name: `constructor(kwargs)`;    Size:    5; Keys: str; Type:       dict; Time: 2.40e-07; Sigma: 1e-09
Name: `constructor(kwargs)`;    Size:    5; Keys: str; Type: frozendict; Time: 2.48e-07; Sigma: 2e-09
////////////////////////////////////////////////////////////////////////////////
Name: `constructor(kwargs)`;    Size: 1000; Keys: str; Type:       dict; Time: 4.80e-05; Sigma: 1e-06
Name: `constructor(kwargs)`;    Size: 1000; Keys: str; Type: frozendict; Time: 2.90e-05; Sigma: 7e-07
################################################################################
////////////////////////////////////////////////////////////////////////////////
Name: `constructor(seq2)`;      Size:    5; Keys: str; Type:       dict; Time: 2.01e-07; Sigma: 9e-10
Name: `constructor(seq2)`;      Size:    5; Keys: str; Type: frozendict; Time: 2.50e-07; Sigma: 1e-09
////////////////////////////////////////////////////////////////////////////////
Name: `constructor(seq2)`;      Size:    5; Keys: int; Type:       dict; Time: 2.18e-07; Sigma: 2e-09
Name: `constructor(seq2)`;      Size:    5; Keys: int; Type: frozendict; Time: 2.73e-07; Sigma: 1e-09
////////////////////////////////////////////////////////////////////////////////
Name: `constructor(seq2)`;      Size: 1000; Keys: str; Type:       dict; Time: 4.29e-05; Sigma: 6e-07
Name: `constructor(seq2)`;      Size: 1000; Keys: str; Type: frozendict; Time: 4.33e-05; Sigma: 6e-07
////////////////////////////////////////////////////////////////////////////////
Name: `constructor(seq2)`;      Size: 1000; Keys: int; Type:       dict; Time: 3.04e-05; Sigma: 4e-07
Name: `constructor(seq2)`;      Size: 1000; Keys: int; Type: frozendict; Time: 3.45e-05; Sigma: 4e-07
################################################################################
////////////////////////////////////////////////////////////////////////////////
Name: `constructor(o)`;         Size:    5; Keys: str; Type:       dict; Time: 7.93e-08; Sigma: 3e-09
Name: `constructor(o)`;         Size:    5; Keys: str; Type: frozendict; Time: 2.41e-08; Sigma: 6e-10
////////////////////////////////////////////////////////////////////////////////
Name: `constructor(o)`;         Size:    5; Keys: int; Type:       dict; Time: 7.94e-08; Sigma: 5e-09
Name: `constructor(o)`;         Size:    5; Keys: int; Type: frozendict; Time: 2.41e-08; Sigma: 6e-10
////////////////////////////////////////////////////////////////////////////////
Name: `constructor(o)`;         Size: 1000; Keys: str; Type:       dict; Time: 6.18e-06; Sigma: 3e-07
Name: `constructor(o)`;         Size: 1000; Keys: str; Type: frozendict; Time: 2.41e-08; Sigma: 6e-10
////////////////////////////////////////////////////////////////////////////////
Name: `constructor(o)`;         Size: 1000; Keys: int; Type:       dict; Time: 3.47e-06; Sigma: 2e-07
Name: `constructor(o)`;         Size: 1000; Keys: int; Type: frozendict; Time: 2.41e-08; Sigma: 6e-10
################################################################################
////////////////////////////////////////////////////////////////////////////////
Name: `o.copy()`;               Size:    5; Keys: str; Type:       dict; Time: 7.28e-08; Sigma: 2e-09
Name: `o.copy()`;               Size:    5; Keys: str; Type: frozendict; Time: 3.18e-08; Sigma: 2e-09
////////////////////////////////////////////////////////////////////////////////
Name: `o.copy()`;               Size:    5; Keys: int; Type:       dict; Time: 7.21e-08; Sigma: 4e-09
Name: `o.copy()`;               Size:    5; Keys: int; Type: frozendict; Time: 3.32e-08; Sigma: 2e-09
////////////////////////////////////////////////////////////////////////////////
Name: `o.copy()`;               Size: 1000; Keys: str; Type:       dict; Time: 6.16e-06; Sigma: 3e-07
Name: `o.copy()`;               Size: 1000; Keys: str; Type: frozendict; Time: 3.18e-08; Sigma: 2e-09
////////////////////////////////////////////////////////////////////////////////
Name: `o.copy()`;               Size: 1000; Keys: int; Type:       dict; Time: 3.46e-06; Sigma: 1e-07
Name: `o.copy()`;               Size: 1000; Keys: int; Type: frozendict; Time: 3.18e-08; Sigma: 2e-09
################################################################################
////////////////////////////////////////////////////////////////////////////////
Name: `o == o`;                 Size:    5; Keys: str; Type:       dict; Time: 7.23e-08; Sigma: 8e-10
Name: `o == o`;                 Size:    5; Keys: str; Type: frozendict; Time: 2.44e-08; Sigma: 2e-09
////////////////////////////////////////////////////////////////////////////////
Name: `o == o`;                 Size:    5; Keys: int; Type:       dict; Time: 7.30e-08; Sigma: 1e-09
Name: `o == o`;                 Size:    5; Keys: int; Type: frozendict; Time: 2.44e-08; Sigma: 2e-09
////////////////////////////////////////////////////////////////////////////////
Name: `o == o`;                 Size: 1000; Keys: str; Type:       dict; Time: 1.38e-05; Sigma: 1e-07
Name: `o == o`;                 Size: 1000; Keys: str; Type: frozendict; Time: 2.44e-08; Sigma: 2e-09
////////////////////////////////////////////////////////////////////////////////
Name: `o == o`;                 Size: 1000; Keys: int; Type:       dict; Time: 1.05e-05; Sigma: 7e-08
Name: `o == o`;                 Size: 1000; Keys: int; Type: frozendict; Time: 2.44e-08; Sigma: 2e-09
################################################################################
////////////////////////////////////////////////////////////////////////////////
Name: `for x in o`;             Size:    5; Keys: str; Type:       dict; Time: 7.33e-08; Sigma: 2e-09
Name: `for x in o`;             Size:    5; Keys: str; Type: frozendict; Time: 6.70e-08; Sigma: 1e-09
////////////////////////////////////////////////////////////////////////////////
Name: `for x in o`;             Size:    5; Keys: int; Type:       dict; Time: 7.33e-08; Sigma: 2e-09
Name: `for x in o`;             Size:    5; Keys: int; Type: frozendict; Time: 6.70e-08; Sigma: 1e-09
////////////////////////////////////////////////////////////////////////////////
Name: `for x in o`;             Size: 1000; Keys: str; Type:       dict; Time: 8.84e-06; Sigma: 5e-08
Name: `for x in o`;             Size: 1000; Keys: str; Type: frozendict; Time: 7.06e-06; Sigma: 6e-08
////////////////////////////////////////////////////////////////////////////////
Name: `for x in o`;             Size: 1000; Keys: int; Type:       dict; Time: 8.67e-06; Sigma: 7e-08
Name: `for x in o`;             Size: 1000; Keys: int; Type: frozendict; Time: 6.94e-06; Sigma: 3e-08
################################################################################
////////////////////////////////////////////////////////////////////////////////
Name: `for x in o.values()`;    Size:    5; Keys: str; Type:       dict; Time: 7.28e-08; Sigma: 9e-10
Name: `for x in o.values()`;    Size:    5; Keys: str; Type: frozendict; Time: 6.48e-08; Sigma: 8e-10
////////////////////////////////////////////////////////////////////////////////
Name: `for x in o.values()`;    Size:    5; Keys: int; Type:       dict; Time: 7.25e-08; Sigma: 1e-09
Name: `for x in o.values()`;    Size:    5; Keys: int; Type: frozendict; Time: 6.45e-08; Sigma: 1e-09
////////////////////////////////////////////////////////////////////////////////
Name: `for x in o.values()`;    Size: 1000; Keys: str; Type:       dict; Time: 9.06e-06; Sigma: 5e-07
Name: `for x in o.values()`;    Size: 1000; Keys: str; Type: frozendict; Time: 7.04e-06; Sigma: 4e-08
////////////////////////////////////////////////////////////////////////////////
Name: `for x in o.values()`;    Size: 1000; Keys: int; Type:       dict; Time: 9.53e-06; Sigma: 3e-08
Name: `for x in o.values()`;    Size: 1000; Keys: int; Type: frozendict; Time: 6.97e-06; Sigma: 3e-08
################################################################################
////////////////////////////////////////////////////////////////////////////////
Name: `for x in o.items()`;     Size:    5; Keys: str; Type:       dict; Time: 1.13e-07; Sigma: 3e-09
Name: `for x in o.items()`;     Size:    5; Keys: str; Type: frozendict; Time: 1.16e-07; Sigma: 2e-09
////////////////////////////////////////////////////////////////////////////////
Name: `for x in o.items()`;     Size:    5; Keys: int; Type:       dict; Time: 1.14e-07; Sigma: 3e-09
Name: `for x in o.items()`;     Size:    5; Keys: int; Type: frozendict; Time: 1.17e-07; Sigma: 2e-09
////////////////////////////////////////////////////////////////////////////////
Name: `for x in o.items()`;     Size: 1000; Keys: str; Type:       dict; Time: 1.53e-05; Sigma: 3e-07
Name: `for x in o.items()`;     Size: 1000; Keys: str; Type: frozendict; Time: 1.53e-05; Sigma: 4e-07
////////////////////////////////////////////////////////////////////////////////
Name: `for x in o.items()`;     Size: 1000; Keys: int; Type:       dict; Time: 1.53e-05; Sigma: 3e-07
Name: `for x in o.items()`;     Size: 1000; Keys: int; Type: frozendict; Time: 1.55e-05; Sigma: 4e-07
################################################################################
////////////////////////////////////////////////////////////////////////////////
Name: `pickle.dumps(o)`;        Size:    5; Keys: str; Type:       dict; Time: 6.82e-07; Sigma: 2e-08
Name: `pickle.dumps(o)`;        Size:    5; Keys: str; Type: frozendict; Time: 2.86e-06; Sigma: 1e-07
////////////////////////////////////////////////////////////////////////////////
Name: `pickle.dumps(o)`;        Size:    5; Keys: int; Type:       dict; Time: 4.77e-07; Sigma: 2e-08
Name: `pickle.dumps(o)`;        Size:    5; Keys: int; Type: frozendict; Time: 2.72e-06; Sigma: 8e-08
////////////////////////////////////////////////////////////////////////////////
Name: `pickle.dumps(o)`;        Size: 1000; Keys: str; Type:       dict; Time: 1.24e-04; Sigma: 4e-06
Name: `pickle.dumps(o)`;        Size: 1000; Keys: str; Type: frozendict; Time: 1.92e-04; Sigma: 5e-06
////////////////////////////////////////////////////////////////////////////////
Name: `pickle.dumps(o)`;        Size: 1000; Keys: int; Type:       dict; Time: 2.81e-05; Sigma: 6e-07
Name: `pickle.dumps(o)`;        Size: 1000; Keys: int; Type: frozendict; Time: 7.37e-05; Sigma: 1e-06
################################################################################
////////////////////////////////////////////////////////////////////////////////
Name: `pickle.loads(dump)`;     Size:    5; Keys: str; Type:       dict; Time: 9.08e-07; Sigma: 6e-09
Name: `pickle.loads(dump)`;     Size:    5; Keys: str; Type: frozendict; Time: 1.79e-06; Sigma: 9e-08
////////////////////////////////////////////////////////////////////////////////
Name: `pickle.loads(dump)`;     Size:    5; Keys: int; Type:       dict; Time: 4.46e-07; Sigma: 6e-09
Name: `pickle.loads(dump)`;     Size:    5; Keys: int; Type: frozendict; Time: 1.32e-06; Sigma: 7e-08
////////////////////////////////////////////////////////////////////////////////
Name: `pickle.loads(dump)`;     Size: 1000; Keys: str; Type:       dict; Time: 1.57e-04; Sigma: 8e-06
Name: `pickle.loads(dump)`;     Size: 1000; Keys: str; Type: frozendict; Time: 1.69e-04; Sigma: 7e-06
////////////////////////////////////////////////////////////////////////////////
Name: `pickle.loads(dump)`;     Size: 1000; Keys: int; Type:       dict; Time: 5.97e-05; Sigma: 5e-06
Name: `pickle.loads(dump)`;     Size: 1000; Keys: int; Type: frozendict; Time: 6.68e-05; Sigma: 2e-06
################################################################################
////////////////////////////////////////////////////////////////////////////////
Name: `class.fromkeys()`;       Size:    5; Keys: str; Type:       dict; Time: 1.88e-07; Sigma: 1e-09
Name: `class.fromkeys()`;       Size:    5; Keys: str; Type: frozendict; Time: 2.22e-07; Sigma: 7e-09
////////////////////////////////////////////////////////////////////////////////
Name: `class.fromkeys()`;       Size:    5; Keys: int; Type:       dict; Time: 2.08e-07; Sigma: 6e-09
Name: `class.fromkeys()`;       Size:    5; Keys: int; Type: frozendict; Time: 2.44e-07; Sigma: 2e-09
////////////////////////////////////////////////////////////////////////////////
Name: `class.fromkeys()`;       Size: 1000; Keys: str; Type:       dict; Time: 4.05e-05; Sigma: 4e-06
Name: `class.fromkeys()`;       Size: 1000; Keys: str; Type: frozendict; Time: 3.84e-05; Sigma: 5e-07
////////////////////////////////////////////////////////////////////////////////
Name: `class.fromkeys()`;       Size: 1000; Keys: int; Type:       dict; Time: 2.93e-05; Sigma: 7e-07
Name: `class.fromkeys()`;       Size: 1000; Keys: int; Type: frozendict; Time: 3.08e-05; Sigma: 2e-06
################################################################################

[1] Benchmarks done under Linux 64 bit, Python 3.10.2, using the C Extension.

Release files for frozendict 2.4.3

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

Source distribution (sdist)

Source distribution for frozendict 2.4.3
File Size Uploaded
frozendict-2.4.3.tar.gz 316.0 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for frozendict 2.4.3
File
frozendict-2.4.3-cp310-cp310-win_arm64.whl CPython 3.10 CPython 3.10 Windows ARM64 Details
frozendict-2.4.3-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
frozendict-2.4.3-cp310-cp310-musllinux_1_1_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.1+ x86-64 Details
frozendict-2.4.3-cp310-cp310-musllinux_1_1_aarch64.whl CPython 3.10 CPython 3.10 Linux musl 1.1+ ARM64 Details
frozendict-2.4.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details
frozendict-2.4.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARM64 Details
frozendict-2.4.3-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
frozendict-2.4.3-cp39-cp39-win_arm64.whl CPython 3.9 CPython 3.9 Windows ARM64 Details
frozendict-2.4.3-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
frozendict-2.4.3-cp39-cp39-musllinux_1_1_x86_64.whl CPython 3.9 CPython 3.9 Linux musl 1.1+ x86-64 Details
frozendict-2.4.3-cp39-cp39-musllinux_1_1_aarch64.whl CPython 3.9 CPython 3.9 Linux musl 1.1+ ARM64 Details
frozendict-2.4.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64 Details
frozendict-2.4.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ ARM64 Details
frozendict-2.4.3-cp39-cp39-macosx_11_0_arm64.whl CPython 3.9 CPython 3.9 macOS 11.0+ ARM64 Details
frozendict-2.4.3-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details
frozendict-2.4.3-cp38-cp38-musllinux_1_1_x86_64.whl CPython 3.8 CPython 3.8 Linux musl 1.1+ x86-64 Details
frozendict-2.4.3-cp38-cp38-musllinux_1_1_aarch64.whl CPython 3.8 CPython 3.8 Linux musl 1.1+ ARM64 Details
frozendict-2.4.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ x86-64 Details
frozendict-2.4.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ ARM64 Details
frozendict-2.4.3-cp38-cp38-macosx_11_0_arm64.whl CPython 3.8 CPython 3.8 macOS 11.0+ ARM64 Details
frozendict-2.4.3-cp37-cp37m-win_amd64.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-64 Details
frozendict-2.4.3-cp37-cp37m-musllinux_1_1_x86_64.whl CPython 3.7 CPython 3.7 pymalloc Linux musl 1.1+ x86-64 Details
frozendict-2.4.3-cp37-cp37m-musllinux_1_1_aarch64.whl CPython 3.7 CPython 3.7 pymalloc Linux musl 1.1+ ARM64 Details
frozendict-2.4.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64 Details
frozendict-2.4.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ ARM64 Details
frozendict-2.4.3-cp36-cp36m-win_amd64.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-64 Details
frozendict-2.4.3-cp36-cp36m-musllinux_1_1_x86_64.whl CPython 3.6 CPython 3.6 pymalloc Linux musl 1.1+ x86-64 Details
frozendict-2.4.3-cp36-cp36m-musllinux_1_1_aarch64.whl CPython 3.6 CPython 3.6 pymalloc Linux musl 1.1+ ARM64 Details
frozendict-2.4.3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ x86-64 Details
frozendict-2.4.3-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ ARM64 Details

Total release size: 2.9 MB

Release files / frozendict-2.4.3.tar.gz

Download URL frozendict-2.4.3.tar.gz
Size 316.0 kB
Tags Source
SHA-256 checksum
How to use checksums
3bb6831c099028b49551fc9852f6ed43a0b901cecb65f6d293141a139dfa971f
BLAKE2b-256 checksum
How to use checksums
8ad53b155f70b795802802447070c5db7c86ad0a14ff2c20447ebedc97490b75
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp310-cp310-win_arm64.whl

Download URL frozendict-2.4.3-cp310-cp310-win_arm64.whl
Size 33.9 kB
Tags CPython 3.10 Windows ARM64
SHA-256 checksum
How to use checksums
abb89da4044e0e01d33da3de41392b51af6c6bb43e03aff6515d7d6aa38d5515
BLAKE2b-256 checksum
How to use checksums
5005c08ede0e4ceab8ad0ce7020e87bcf0f6d4c2ed64c35e4d6268fc0d99d8ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp310-cp310-win_amd64.whl

Download URL frozendict-2.4.3-cp310-cp310-win_amd64.whl
Size 37.3 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
e7c2ebdca880dcc6161619428379ac21577735d594e319b0ea5cae3ae7e8e5ba
BLAKE2b-256 checksum
How to use checksums
5d1fa3332d4d89f756d312303a0a973615703c5a6d2ca1637fb9b275f018694e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp310-cp310-musllinux_1_1_x86_64.whl

Download URL frozendict-2.4.3-cp310-cp310-musllinux_1_1_x86_64.whl
Size 118.5 kB
Tags CPython 3.10 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
3f930d5af0121be08235c6409f31c0a6e8e049af3b5ed9eb43cd7e688a362bae
BLAKE2b-256 checksum
How to use checksums
848346646ee4309ffd8881ff85cd2491b62aa359b2cb2216375710e5168dff2a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp310-cp310-musllinux_1_1_aarch64.whl

Download URL frozendict-2.4.3-cp310-cp310-musllinux_1_1_aarch64.whl
Size 119.2 kB
Tags CPython 3.10 Linux musl 1.1+ ARM64
SHA-256 checksum
How to use checksums
f3afd54f0aad08cc3baaec9ecff57995008953e6a34cf78dc24ae0217d5bcd4c
BLAKE2b-256 checksum
How to use checksums
4c3102fd5de708e1669422c327f26322529f346a66ceac1b4ccc59545ebb738c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL frozendict-2.4.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 117.3 kB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
3d30ca189dedd21ae16b4f596653b011e12fc459f31a5a2b3f2021d684cdd3bc
BLAKE2b-256 checksum
How to use checksums
9baa6ffc3f287669f54c6e02d4deeab6989dab9134d610372ad14bd12ec8fc74
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL frozendict-2.4.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 117.5 kB
Tags CPython 3.10 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
e6fb13829ebcdbfdcf09ab464717e74d94fd66ade23e423ccf3b92922b5645b0
BLAKE2b-256 checksum
How to use checksums
27b6593794317a104ce235ab3db7c987fc3d7eccdb0dcd1f1dc3195cfcd8dac9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp310-cp310-macosx_11_0_arm64.whl

Download URL frozendict-2.4.3-cp310-cp310-macosx_11_0_arm64.whl
Size 37.8 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
8295584b3e6cdde2033405ab467c1fe28d68f50beb82b716e3b68fd0c4d1e6c5
BLAKE2b-256 checksum
How to use checksums
2fec7e60107101cde8b2d2f9d56713b10b2803d90526481d7c473e55393c1a98
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp39-cp39-win_arm64.whl

Download URL frozendict-2.4.3-cp39-cp39-win_arm64.whl
Size 34.2 kB
Tags CPython 3.9 Windows ARM64
SHA-256 checksum
How to use checksums
27a8af898f82255fb65722791002796b9694a4c5480e6d12d6e7221530d8294a
BLAKE2b-256 checksum
How to use checksums
2b00798eb717eea45fe957eb0326ee2b162c39c9c4450d28ba09cb6fd176f412
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp39-cp39-win_amd64.whl

Download URL frozendict-2.4.3-cp39-cp39-win_amd64.whl
Size 37.5 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
664c185cac890016cc629f556b8fa4aa1d1ff56f8b96e30cde25e5294d0713b5
BLAKE2b-256 checksum
How to use checksums
d573d6728570540ba24aacda89ffd3503a64f4d2a74e300357f4c5cc8f9b9431
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp39-cp39-musllinux_1_1_x86_64.whl

Download URL frozendict-2.4.3-cp39-cp39-musllinux_1_1_x86_64.whl
Size 117.8 kB
Tags CPython 3.9 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
30c9eb3a599ed7624f03a3d9777503852c9d52a8b190c43225c5b6353bfca204
BLAKE2b-256 checksum
How to use checksums
51543dadac7eb60e2268ef5e9c9381bd0d8ab442ae6fa6f2bbeb5890b595699a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp39-cp39-musllinux_1_1_aarch64.whl

Download URL frozendict-2.4.3-cp39-cp39-musllinux_1_1_aarch64.whl
Size 118.6 kB
Tags CPython 3.9 Linux musl 1.1+ ARM64
SHA-256 checksum
How to use checksums
55fd13532c5bcab80ab9543f2344f67c4d6a38a04c7b5bc5317a7d3b7e00c0d3
BLAKE2b-256 checksum
How to use checksums
426522f1bf216f4a2afa89b28dbffad3369c6018963be1cef1f90eeba3366a2c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL frozendict-2.4.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 116.8 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
12a4af1c819c8bae63f72a56af1410e158ac674d492d8dcffd6001bdd022a6c3
BLAKE2b-256 checksum
How to use checksums
6e965116c1960562821a467c789c8458e8941878c861ebd5484299fce2dc56df
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL frozendict-2.4.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 117.0 kB
Tags CPython 3.9 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
4d2b1588b9913e8e281781ab78627961f566657e94eb23e95b0b6d47c531553a
BLAKE2b-256 checksum
How to use checksums
ea3e4c021178917c541f4e54df84da7e29a0905b2d41b1df02a8033f321866f3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp39-cp39-macosx_11_0_arm64.whl

Download URL frozendict-2.4.3-cp39-cp39-macosx_11_0_arm64.whl
Size 37.8 kB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
98cb02ea3d0c1110f79ecedfce79903f0c915a9466180e09a847ed813be5e521
BLAKE2b-256 checksum
How to use checksums
49095e196749bd4b70f430e40199635b1c5a2b116d21ae2e71bfffc0b1ab8f86
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp38-cp38-win_amd64.whl

Download URL frozendict-2.4.3-cp38-cp38-win_amd64.whl
Size 37.2 kB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
dd4e6c888884c662f0074ac35b3e10a6ee3cccd2f550c489a4c03cbf70ece03e
BLAKE2b-256 checksum
How to use checksums
bc659aa285c15878835d3482cb0bdc6d5d54ef04069b5730fada7cd1c8986e25
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp38-cp38-musllinux_1_1_x86_64.whl

Download URL frozendict-2.4.3-cp38-cp38-musllinux_1_1_x86_64.whl
Size 118.6 kB
Tags CPython 3.8 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
d49c10ed8cdb678cd6d46367391bc3cde9e6b705ceba83c4bd58854557a9304a
BLAKE2b-256 checksum
How to use checksums
3870bc98ebf93ed1096a485e9f58445bbb5a215b0e70e5f03efcfc8b75ab9613
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp38-cp38-musllinux_1_1_aarch64.whl

Download URL frozendict-2.4.3-cp38-cp38-musllinux_1_1_aarch64.whl
Size 119.8 kB
Tags CPython 3.8 Linux musl 1.1+ ARM64
SHA-256 checksum
How to use checksums
2f150aabd05655075e7bb47c0bb7d91765649e4729e91d1ac4b1512c1f785256
BLAKE2b-256 checksum
How to use checksums
5746838fe5b4264003f2edac59b2601e9ba7102b34c6fa6ba6be76b0f94eb33b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL frozendict-2.4.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 115.1 kB
Tags CPython 3.8 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
0a94e88e3f457fb9f4039890a756e157a0b5e5a005bcfe6367295f511193a319
BLAKE2b-256 checksum
How to use checksums
1c4f3f276d947de22208a956ddbe48a6fdc1d346e0abf582d3eb51fe042193cc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL frozendict-2.4.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 115.2 kB
Tags CPython 3.8 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
3196a0c856bd4eb8e192d26a959ec10441c4116b6f9da336030b6975257c9daa
BLAKE2b-256 checksum
How to use checksums
98d5675bc941c965cafb18ea3a7e32ec02b47d806dfc5bef0ef9ff4775b26156
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp38-cp38-macosx_11_0_arm64.whl

Download URL frozendict-2.4.3-cp38-cp38-macosx_11_0_arm64.whl
Size 37.5 kB
Tags CPython 3.8 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
24d520a2264b9eba37ea19ca6a5523bf0d8a0330d0902bf50f2d1817e6e8139c
BLAKE2b-256 checksum
How to use checksums
530d29304f25675d0a5b4b012a22a3bfb69ace885788236a50c9f759e5f066d5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp37-cp37m-win_amd64.whl

Download URL frozendict-2.4.3-cp37-cp37m-win_amd64.whl
Size 37.1 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
8153f09bd71800eb866626124b3fb54dae2fb6dbb342cb1d38485d8fe95bf61e
BLAKE2b-256 checksum
How to use checksums
0aafcd371e211fd9a27534caeda5c4751044fb7dbb7b18e748869cf334b8c955
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp37-cp37m-musllinux_1_1_x86_64.whl

Download URL frozendict-2.4.3-cp37-cp37m-musllinux_1_1_x86_64.whl
Size 106.0 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
a64f6c6ccf201182edf003e27b25c790dc7d9ba1b94ae84f3060d969bc985810
BLAKE2b-256 checksum
How to use checksums
2707532a31d99e29751680fc4c1589d0ecc310092213427d9edfdfb725f02f29
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp37-cp37m-musllinux_1_1_aarch64.whl

Download URL frozendict-2.4.3-cp37-cp37m-musllinux_1_1_aarch64.whl
Size 106.5 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux musl 1.1+ ARM64
SHA-256 checksum
How to use checksums
ddcfc657058e71bf3641d749f2b22d2dd92cc25d58b232e8e2c2bc0fcf0b6fb4
BLAKE2b-256 checksum
How to use checksums
833b6d8e96c9c764f58721894c2c95ccee2a8de32769bb9de2c813ef70115b4e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL frozendict-2.4.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 103.7 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
4cb1eb811b43c3183482b09f9a5b9ed8662b213e57ca090692433bc234001ae5
BLAKE2b-256 checksum
How to use checksums
cff13536ec60c8112615767b7e2742d2862dd3c0a37a271a71936f8cec88fdea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL frozendict-2.4.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 103.8 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
904165b873897e2a0e3faf742570fcdaa57c403f86a2553f432c2498cd315f9f
BLAKE2b-256 checksum
How to use checksums
09d27fff07c9940947c60cf3e2df31d4c18784e7f5904aad9fc6495e8afd2ead
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp36-cp36m-win_amd64.whl

Download URL frozendict-2.4.3-cp36-cp36m-win_amd64.whl
Size 38.8 kB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
d4527d411d7d228c2907aeeb0e6bad87401571982a05a27d0f8334c64353c22c
BLAKE2b-256 checksum
How to use checksums
1bffe8c07d3e73796c7b2008b4308171cee55726303053484350f17553e554ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp36-cp36m-musllinux_1_1_x86_64.whl

Download URL frozendict-2.4.3-cp36-cp36m-musllinux_1_1_x86_64.whl
Size 104.3 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
f5c0f53db39d2ccf4b126983a0657ec67e41134e7fa43b424408291aa2804746
BLAKE2b-256 checksum
How to use checksums
dbbcc8743d84d4bc4069daca3795ce6a09b0f08a7df1f4b45d615bebe803e7a9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp36-cp36m-musllinux_1_1_aarch64.whl

Download URL frozendict-2.4.3-cp36-cp36m-musllinux_1_1_aarch64.whl
Size 104.9 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux musl 1.1+ ARM64
SHA-256 checksum
How to use checksums
d7684df22e7ca8d2a27cc4806fb66da6ef63ffc7b825d0f20fceab91202fea64
BLAKE2b-256 checksum
How to use checksums
dcc163fe80f6c978133c49bea562aff4a6d2f31ef749006a7a7899c6e37b0150
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL frozendict-2.4.3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 101.8 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
a0f7d4b17485d1a13fe4efa6be4c9b9a9977208a68d4ef4b8b4be7578eaacabb
BLAKE2b-256 checksum
How to use checksums
9cce8822d76be8f0d6ae1de8971914a14afc5f10c38699e4344163781109a2e5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release files / frozendict-2.4.3-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL frozendict-2.4.3-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 102.0 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
283dd1a5a815ae093aa265149c30ded5b3da9544a1894179ea21fdb35771fe48
BLAKE2b-256 checksum
How to use checksums
209600055283fdfcfa56232ee4512da41903dc213f12774f5907945fbfc9b70d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.0

Release history Release notifications | RSS feed

2.4.7

91 release files

2.4.6

39 release files

This release

2.4.3 This release

31 release files

2.4.2

36 release files

2.4.0

36 release files

2.3.9

37 release files

2.3.8

37 release files

2.3.6

20 release files

2.3.5

16 release files

2.3.4

17 release files

2.3.3

17 release files

2.3.2

17 release files

2.2.1

17 release files

2.2.0

14 release files

2.1.3

2 release files

2.1.2

2 release files

2.1.1

2 release files

2.1.0

2 release files

2.0.7

2 release files

2.0.6

2 release files

2.0.5

2 release files

2.0.4

2 release files

2.0.3

2 release files

2.0.2

1 release file

1.2

1 release file

1.0

1 release file

0.6

1 release file

0.5

1 release file

0.4

1 release file

0.3

1 release file

0.2

1 release file

0.1

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