Skip to main content

License: MIT Python 3.10+ Release PyPI Python package

Icegrams: A fast, compact trigram library for Icelandic

Overview

Icegrams is an MIT-licensed Python 3 (>=3.10) package that encapsulates a large trigram library for Icelandic. (A trigram is a tuple of three consecutive words or tokens that appear in real-world text.)

Over 78 million unique trigrams and their frequency counts are heavily compressed using radix tries and quasi-succinct indexes employing Elias-Fano encoding. This enables the ~213 megabyte compressed trigram file to be mapped directly into memory, with no ex ante decompression, for fast queries (typically ~10 microseconds per lookup).

The Icegrams library is implemented in Python and C/C++, glued together via CFFI.

The trigram storage approach is based on a 2017 paper by Pibiri and Venturini, also referring to Ottaviano and Venturini (2014) regarding partitioned Elias-Fano indexes.

You can use Icegrams to obtain probabilities (relative frequencies) of over 1.7 million different unigrams (single words or tokens), or of bigrams (pairs of two words or tokens), or of trigrams. You can also ask it to return the N most likely successors to any unigram or bigram.

Icegrams is useful for instance in spelling correction, predictive typing, to help disabled people write text faster, and for various text generation, statistics and modelling tasks.

The Icegrams trigram corpus is built from the Icelandic Gigaword Corpus (Risamálheild), which is collected and maintained by The Árni Magnússon Institute for Icelandic Studies, supplemented by a corpus of recent news articles collected by Miðeind. A weighted sample of the corpora, containing about 1 billion tokens of text from 1980 through July 2026, was used as the source of the token stream. Every sentence was corrected with Málfríður, Miðeind's neural spelling and grammar correction model. Trigrams that only occurred once in the stream were eliminated before creating the compressed Icegrams database. The creation process is further described here; the previous (2019) model is described here. The 2019 model itself also remains available: it is bundled inside icegrams releases up to and including 1.1.7 on PyPI, and can be retrieved from this repository's git history, where it was tracked via Git LFS as src/icegrams/resources/trigrams.bin until version 2.0.0.

Example

>>> from icegrams import Ngrams
>>> ng = Ngrams()
>>> # Obtain the frequency of the unigram 'Ísland'
>>> ng.freq("Ísland")
708104
>>> # Obtain the probability of the unigram 'Ísland', as a fraction
>>> # of the frequency of all unigrams in the database
>>> ng.prob("Ísland")
0.00023349672913028182
>>> # Obtain the log probability (base e) of the unigram 'Ísland'
>>> ng.logprob("Ísland")
-8.362342488960794
>>> # Obtain the frequency of the bigram 'Katrín Jakobsdóttir'
>>> ng.freq("Katrín", "Jakobsdóttir")
47918
>>> # Obtain the probability of 'Jakobsdóttir' given 'Katrín'
>>> ng.prob("Katrín", "Jakobsdóttir")
0.1746471994635099
>>> # Obtain the probability of 'Júlíusdóttir' given 'Katrín'
>>> ng.prob("Katrín", "Júlíusdóttir")
0.027305595241566307
>>> # Obtain the frequency of 'velta fyrirtækisins er'
>>> ng.freq("velta", "fyrirtækisins", "er")
15
>>> # adj_freq returns adjusted frequencies, i.e incremented by 1
>>> ng.adj_freq("xxx", "yyy", "zzz")
1
>>> # Obtain the N most likely successors of a given unigram or bigram,
>>> # in descending order by log probability of each successor
>>> ng.succ(10, "stjórnarskrá", "lýðveldisins")
[('Íslands', -1.4328143767547825), ('.', -2.4118815147731096),
    (',', -2.960989325110117), ('og', -3.4164648537929434), ('að', -4.693559922947841),
    ('sem', -4.728651242759112), ('er', -5.016333315210893), ('í', -5.49590639547278),
    ('en', -5.575949103146316), ('?', -5.575949103146316)]
>>> ng.succ(1, "Ég", "hlýði")
[('Víði', -0.9694005571881035)]

Reference

Initializing Icegrams

After installing the icegrams package, use the following code to import it and initialize an instance of the Ngrams class:

from icegrams import Ngrams
ng = Ngrams()

Now you can use the ng instance to query for unigram, bigram and trigram frequencies and probabilities.

An Ngrams instance can be shared by any number of threads, also on free-threaded Python (3.14t and 3.15t), where queries run in parallel. Call ng.close() only when no other thread is using ng.

On Python with the GIL, threads take turns at queries, and several busy threads are slower than one: there, run parallel queries in separate processes, each with its own Ngrams. The processes share the memory-mapped model file.

By default, probabilities of bigrams and trigrams that do not occur in the database are estimated by backing off to the next lower order (see prob() below). To obtain the behavior of versions before 2.1.0, where no backoff was done, pass backoff=False:

ng = Ngrams(backoff=False)

Note that the trigram model file must be downloaded once before an Ngrams instance can be created, as described in the Installation section. If the model is not present, the Ngrams() constructor raises icegrams.ModelNotFoundError.

The Ngrams class

  • __init__(self)

    Initializes the Ngrams instance.

  • freq(self, *args) -> int

    Returns the frequency of a unigram, bigram or trigram.

    • str[] *args A parameter sequence of consecutive unigrams to query the frequency for.
    • returns An integer with the frequency of the unigram, bigram or trigram.

    To query for the frequency of a unigram in the text, call ng.freq("unigram1"). This returns the number of times that the unigram appears in the database. The unigram is queried as-is, i.e. with no string stripping or lowercasing.

    To query for the frequency of a bigram in the text, call ng.freq("unigram1", "unigram2").

    To query for the frequency of a trigram in the text, call ng.freq("unigram1", "unigram2", "unigram3").

    If you pass more than 3 arguments to ng.freq(), only the last 3 are significant, and the query will be treated as a trigram query.

    Examples:

    >>>> ng.freq("stjórnarskrá")
    107427
    >>>> ng.freq("stjórnarskrá", "lýðveldisins")
    3167
    >>>> ng.freq("stjórnarskrá", "lýðveldisins", "Íslands")
    755
    >>>> ng.freq("xxx", "yyy", "zzz")
    0
    
  • adj_freq(self, *args) -> int

    Returns the adjusted frequency of a unigram, bigram or trigram.

    • str[] *args A parameter sequence of consecutive unigrams to query the frequency for.
    • returns An integer with the adjusted frequency of the unigram, bigram or trigram. The adjusted frequency is the actual frequency plus 1. The method thus never returns 0.

    To query for the frequency of a unigram in the text, call ng.adj_freq("unigram1"). This returns the number of times that the unigram appears in the database, plus 1. The unigram is queried as-is, i.e. with no string stripping or lowercasing.

    To query for the frequency of a bigram in the text, call ng.adj_freq("unigram1", "unigram2").

    To query for the frequency of a trigram in the text, call ng.adj_freq("unigram1", "unigram2", "unigram3").

    If you pass more than 3 arguments to ng.adj_freq(), only the last 3 are significant, and the query will be treated as a trigram query.

    Examples:

    >>>> ng.adj_freq("stjórnarskrá")
    107428
    >>>> ng.adj_freq("stjórnarskrá", "lýðveldisins")
    3168
    >>>> ng.adj_freq("stjórnarskrá", "lýðveldisins", "Íslands")
    756
    >>>> ng.adj_freq("xxx", "yyy", "zzz")
    1
    
  • prob(self, *args) -> float

    Returns the probability of a unigram, bigram or trigram.

    • str[] *args A parameter sequence of consecutive unigrams to query the probability for.
    • returns A float with the probability of the given unigram, bigram or trigram.

    The probability of a unigram is the frequency of the unigram divided by the sum of the frequencies of all unigrams in the database.

    The probability of a bigram (u1, u2) is the frequency of the bigram divided by the frequency of the unigram u1, i.e. how likely u2 is to succeed u1.

    The probability of a trigram (u1, u2, u3) is the frequency of the trigram divided by the frequency of the bigram (u1, u2), i.e. how likely u3 is to succeed u1 u2.

    If a bigram or trigram does not occur in the database, its probability is estimated by backoff: the probability of the next lower order n-gram, i.e. (u2, u3) for a trigram or (u3) for a bigram, multiplied by icegrams.BACKOFF_FACTOR (0.4, a read-only constant). The backoff is applied repeatedly if needed, so an unseen trigram whose bigram (u2, u3) is also unseen is estimated from the unigram probability of u3 multiplied by the factor squared. This is the "stupid backoff" scheme of Brants et al. (2007), with one addition: the backed-off estimate is capped at 1 / (context frequency + 1), i.e. what a single unseen continuation of the context would be worth. An unseen n-gram therefore never scores higher than a seen n-gram in the same context, while unseen continuations are still ranked against each other by their lower-order probabilities. The resulting values are not normalized to sum to exactly 1 over the vocabulary, but are suitable for ranking and scoring.

    If the Ngrams instance was created with backoff=False, no backoff is done and the add-one estimates described below under logprob() are returned instead. Note that in that case an n-gram whose context (u1 or (u1, u2)) is itself unseen gets a probability of 1.0.

    If you pass more than 3 arguments to ng.prob(), only the last 3 are significant, and the query will be treated as a trigram probability query.

    Examples:

    >>>> ng.prob("stjórnarskrá")
    3.542424727548586e-05
    >>>> ng.prob("stjórnarskrá", "lýðveldisins")
    0.02948951856126892
    >>>> ng.prob("stjórnarskrá", "lýðveldisins", "Íslands")
    0.23863636363636387
    >>>> # Unseen trigram, backed off to 0.4 * prob("át", "Ísland")
    >>>> ng.prob("hundurinn", "át", "Ísland")
    3.735947666084515e-05
    
  • logprob(self, *args) -> float

    Returns the log probability of a unigram, bigram or trigram.

    • str[] *args A parameter sequence of consecutive unigrams to query the log probability for.
    • returns A float with the natural logarithm (base e) of the probability of the given unigram, bigram or trigram.

    The probability of a unigram is the adjusted frequency of the unigram divided by the sum of the frequencies of all unigrams in the database.

    The probability of a bigram (u1, u2) is the adjusted frequency of the bigram divided by the adjusted frequency of the unigram u1, i.e. how likely u2 is to succeed u1.

    The probability of a trigram (u1, u2, u3) is the adjusted frequency of the trigram divided by the adjusted frequency of the bigram (u1, u2), i.e. how likely u3 is to succeed u1 u2.

    Unseen bigrams and trigrams are backed off to the next lower order as described under prob() above, unless the Ngrams instance was created with backoff=False.

    If you pass more than 3 arguments to ng.logprob(), only the last 3 are significant, and the query will be treated as a trigram probability query.

    Examples:

    >>>> ng.logprob("stjórnarskrá")
    -10.248114021011704
    >>>> ng.logprob("stjórnarskrá", "lýðveldisins")
    -3.523720381779265
    >>>> ng.logprob("stjórnarskrá", "lýðveldisins", "Íslands")
    -1.4328143767547825
    
  • succ(self, n, *args) -> list[tuple]

    Returns the N most probable successors of a unigram or bigram.

    • int n A positive integer specifying how many successors, at a maximum, should be returned.
    • str[] *args One or two string parameters containing the unigram or bigram to query the successors for.
    • returns A list of tuples of (successor unigram, log probability), in descending order of probability.

    If you pass more than 2 string arguments to ng.succ(), only the last 2 are significant, and the query will be treated as a bigram successor query.

    Examples:

    >>>> ng.succ(2, "stjórnarskrá")
    [('.', -1.8955821526777576), ('og', -2.45003747615368)]
    >>>> ng.succ(2, "stjórnarskrá", "lýðveldisins")
    [('Íslands', -1.4328143767547825), ('.', -2.4118815147731096)]
    >>>> # The following is equivalent to ng.succ(2, "lýðveldisins", "Íslands")
    >>>> ng.succ(2, "stjórnarskrá", "lýðveldisins", "Íslands")
    [(',', -1.799606749884445), ('nr.', -1.8759797286690185)]
    

Notes

Icegrams is built with a sliding window over the source text. This means that a sentence such as "Maðurinn borðaði ísinn." results in the following trigrams being added to the database:

   ("", "", "Maðurinn")
   ("", "Maðurinn", "borðaði")
   ("Maðurinn", "borðaði", "ísinn")
   ("borðaði", "ísinn", ".")
   ("ísinn", ".", "")
   (".", "", "")

The same sliding window strategy is applied for bigrams, so the following bigrams would be recorded for the same sentence:

   ("", "Maðurinn")
   ("Maðurinn", "borðaði")
   ("borðaði", "ísinn")
   ("ísinn", ".")
   (".", "")

You can thus obtain the N unigrams that most often start a sentence by asking for ng.succ(N, "").

And, of course, four unigrams are also added, one for each token in the sentence.

The tokenization of the source text into unigrams is done with the Tokenizer package and uses the rules documented there. Importantly, tokens other than words, abbreviations, entity names, person names and punctuation are replaced by placeholders. This means that all numbers are represented by the token [NUMBER], amounts by [AMOUNT], dates by [DATEABS] and [DATEREL], e-mail addresses by [EMAIL], etc. For the complete mapping of token types to placeholder strings, see the documentation for the Tokenizer package.

Prerequisites

This package runs on CPython 3.10 or newer, free-threaded CPython 3.14t and 3.15t, and PyPy 3.11 and 3.12. Binary wheels are published for Linux (x86-64 and aarch64, gcc), macOS (x86-64 and arm64, clang) and Windows (x86-64, MSVC).

If a binary wheel package isn't available on PyPI for your system, you may need to have the python3-dev package (or its Windows equivalent) installed on your system to set up Icegrams successfully. This is because a source distribution install requires a C++ compiler and linker:

# Debian or Ubuntu:
sudo apt-get install python3-dev

Installation

To install this package:

pip install icegrams

The trigram model file (~213 MB) is not included in the package itself. It is published as an asset of a GitHub release of this repository and must be downloaded once, after installing the package:

python -m icegrams.download

This stores the model in a per-user cache directory (on Linux typically ~/.cache/icegrams/), verifies its checksum, and is a no-op if the model is already there. The same step is available from Python as icegrams.download.download_model(). Downloading is deliberately a separate setup step: creating an Ngrams instance never accesses the network, it only checks that the model is present and raises icegrams.ModelNotFoundError if it isn't.

The following environment variables affect where the model is stored and looked up:

  • ICEGRAMS_MODEL_DIR: base directory for the model, instead of the per-user cache directory. The model is stored in a subdirectory named after the model release (e.g. model-2026.08), so a package upgrade that ships a new model requires running the download step again.
  • ICEGRAMS_MODEL_FILE: path of an existing model file to use directly, skipping the lookup entirely (useful for offline or air-gapped environments).
  • ICEGRAMS_MODEL_URL: alternative URL for the download step to fetch the model from. The pinned checksum is only verified for the official URL.

Run python -m icegrams.download --help for the corresponding command-line options (--dir, --url and --force).

If you want to be able to edit the source, do like so (assuming you have git installed):

git clone https://github.com/mideind/Icegrams
cd Icegrams
# [ Activate your virtualenv here if you have one ]
python setup.py develop

The package source code is now in ./src/icegrams.

Tests

To run the built-in tests, install pytest, cd to your Icegrams subdirectory (and optionally activate your virtualenv), then run:

python -m pytest

Changelog

  • Version 2.1.0: prob() and logprob() now back off to the next lower n-gram order for bigrams and trigrams that do not occur in the database ("stupid backoff", factor BACKOFF_FACTOR = 0.4, capped so that an unseen n-gram never outscores a seen one in the same context). Previously an n-gram whose context was itself unseen was given a probability of 1.0. Probabilities of n-grams that do occur are unchanged. The previous behavior is available via Ngrams(backoff=False). Runs on free-threaded CPython (3.14t and 3.15t) without the GIL, and an Ngrams instance can be shared by threads. Support for Python 3.15. Wheels added for free-threaded CPython, PyPy 3.12 and Linux aarch64. Now requires Python 3.10+ and cffi 2.0+. succ() is about four times as fast, and no longer allocates memory in proportion to the number of successors, which is in the hundreds of thousands for common words. (2026-10-16)
  • Version 2.0.0: New trigram model built from a ~1 billion word corpus (IGC-2022 and IGC-2024ext plus recent news through July 2026), corrected with Miðeind's Málfríður neural spelling and grammar correction model. The model file is no longer bundled in the package; it is fetched from a GitHub release in a separate one-time step, python -m icegrams.download, and Ngrams() raises ModelNotFoundError if it isn't present. (2026-09-03)
  • Version 1.1.7: Published abi3 wheels; fixed C++ linking in source builds. (2026-06-11)
  • Version 1.1.6: Added abi3 wheel support for smaller release size. (2025-12-12)
  • Version 1.1.5: Fixed PEP 561 compliance (py.typed). Fixed ruff linting in CI. (2025-12-12)
  • Version 1.1.4: Added support for Python 3.14 and Windows. Improved CI with PyPI trusted publishing. (2025-12-12)
  • Version 1.1.3: Minor tweaks. Support for Python 3.13. Now requires Python 3.9+. (2024-08-27)
  • Version 1.1.2: Minor bug fixes. Cross-platform wheels provided. Now requires Python 3.7+. (2022-12-14)
  • Version 1.1.0: Python 3.5 support dropped; macOS builds fixed; PyPy wheels generated
  • Version 1.0.0: New trigram database sourced from the Icelandic Gigaword Corpus (Risamálheild) with improved tokenization. Replaced GNU GPLv3 with MIT license.
  • Version 0.6.0: Python type annotations added
  • Version 0.5.0: Trigrams corpus has been spell-checked

Icegrams is Copyright © 2020-2026 Miðeind ehf.. The original author of this software is Vilhjálmur Þorsteinsson.

This software is licensed under the MIT License:

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Metadata

Release files for icegrams 2.1.0

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

Source distribution (sdist)

Source distribution for icegrams 2.1.0
File Size Uploaded Provenance Actions
icegrams-2.1.0.tar.gz 53.0 kB With provenance Details for icegrams-2.1.0.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for icegrams 2.1.0
File Actions
icegrams-2.1.0-pp312-pypy312_pp80-win_amd64.whl PyPy 3.12 PyPy 3.12 8.0 Windows x86-64 Details for icegrams-2.1.0-pp312-pypy312_pp80-win_amd64.whl
icegrams-2.1.0-pp312-pypy312_pp80-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl PyPy 3.12 PyPy 3.12 8.0 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details for icegrams-2.1.0-pp312-pypy312_pp80-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
icegrams-2.1.0-pp312-pypy312_pp80-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl PyPy 3.12 PyPy 3.12 8.0 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details for icegrams-2.1.0-pp312-pypy312_pp80-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
icegrams-2.1.0-pp312-pypy312_pp80-macosx_11_0_arm64.whl PyPy 3.12 PyPy 3.12 8.0 macOS 11.0+ ARM64 Details for icegrams-2.1.0-pp312-pypy312_pp80-macosx_11_0_arm64.whl
icegrams-2.1.0-pp312-pypy312_pp80-macosx_10_15_x86_64.whl PyPy 3.12 PyPy 3.12 8.0 macOS 10.15+ x86-64 Details for icegrams-2.1.0-pp312-pypy312_pp80-macosx_10_15_x86_64.whl
icegrams-2.1.0-pp311-pypy311_pp80-win_amd64.whl PyPy 3.11 PyPy 3.11 8.0 Windows x86-64 Details for icegrams-2.1.0-pp311-pypy311_pp80-win_amd64.whl
icegrams-2.1.0-pp311-pypy311_pp80-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl PyPy 3.11 PyPy 3.11 8.0 Linux glibc 2.28+ ARM64, Linux glibc 2.17+ ARM64 Details for icegrams-2.1.0-pp311-pypy311_pp80-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
icegrams-2.1.0-pp311-pypy311_pp80-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl PyPy 3.11 PyPy 3.11 8.0 Linux glibc 2.28+ x86-64, Linux glibc 2.5+ x86-64 Details for icegrams-2.1.0-pp311-pypy311_pp80-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
icegrams-2.1.0-pp311-pypy311_pp80-macosx_11_0_arm64.whl PyPy 3.11 PyPy 3.11 8.0 macOS 11.0+ ARM64 Details for icegrams-2.1.0-pp311-pypy311_pp80-macosx_11_0_arm64.whl
icegrams-2.1.0-pp311-pypy311_pp80-macosx_10_15_x86_64.whl PyPy 3.11 PyPy 3.11 8.0 macOS 10.15+ x86-64 Details for icegrams-2.1.0-pp311-pypy311_pp80-macosx_10_15_x86_64.whl
icegrams-2.1.0-pp311-pypy311_pp73-win_amd64.whl PyPy 3.11 PyPy 3.11 7.3 Windows x86-64 Details for icegrams-2.1.0-pp311-pypy311_pp73-win_amd64.whl
icegrams-2.1.0-pp311-pypy311_pp73-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl PyPy 3.11 PyPy 3.11 7.3 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details for icegrams-2.1.0-pp311-pypy311_pp73-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
icegrams-2.1.0-pp311-pypy311_pp73-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl PyPy 3.11 PyPy 3.11 7.3 Linux glibc 2.28+ x86-64, Linux glibc 2.5+ x86-64 Details for icegrams-2.1.0-pp311-pypy311_pp73-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
icegrams-2.1.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl PyPy 3.11 PyPy 3.11 7.3 macOS 11.0+ ARM64 Details for icegrams-2.1.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl
icegrams-2.1.0-pp311-pypy311_pp73-macosx_10_15_x86_64.whl PyPy 3.11 PyPy 3.11 7.3 macOS 10.15+ x86-64 Details for icegrams-2.1.0-pp311-pypy311_pp73-macosx_10_15_x86_64.whl
icegrams-2.1.0-cp315-cp315t-win_amd64.whl CPython 3.15 CPython 3.15 free-threading Windows x86-64 Details for icegrams-2.1.0-cp315-cp315t-win_amd64.whl
icegrams-2.1.0-cp315-cp315t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.15 CPython 3.15 free-threading Linux glibc 2.28+ ARM64, Linux glibc 2.17+ ARM64 Details for icegrams-2.1.0-cp315-cp315t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
icegrams-2.1.0-cp315-cp315t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.15 CPython 3.15 free-threading Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details for icegrams-2.1.0-cp315-cp315t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
icegrams-2.1.0-cp315-cp315t-macosx_11_0_arm64.whl CPython 3.15 CPython 3.15 free-threading macOS 11.0+ ARM64 Details for icegrams-2.1.0-cp315-cp315t-macosx_11_0_arm64.whl
icegrams-2.1.0-cp315-cp315t-macosx_10_15_x86_64.whl CPython 3.15 CPython 3.15 free-threading macOS 10.15+ x86-64 Details for icegrams-2.1.0-cp315-cp315t-macosx_10_15_x86_64.whl
icegrams-2.1.0-cp314-cp314t-win_amd64.whl CPython 3.14 CPython 3.14 free-threading Windows x86-64 Details for icegrams-2.1.0-cp314-cp314t-win_amd64.whl
icegrams-2.1.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ ARM64, Linux glibc 2.17+ ARM64 Details for icegrams-2.1.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
icegrams-2.1.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details for icegrams-2.1.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
icegrams-2.1.0-cp314-cp314t-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64 Details for icegrams-2.1.0-cp314-cp314t-macosx_11_0_arm64.whl
icegrams-2.1.0-cp314-cp314t-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 free-threading macOS 10.15+ x86-64 Details for icegrams-2.1.0-cp314-cp314t-macosx_10_15_x86_64.whl
icegrams-2.1.0-cp310-abi3-win_amd64.whl CPython 3.10 abi3 Windows x86-64 Details for icegrams-2.1.0-cp310-abi3-win_amd64.whl
icegrams-2.1.0-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.10 abi3 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details for icegrams-2.1.0-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
icegrams-2.1.0-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.10 abi3 Linux glibc 2.28+ x86-64, Linux glibc 2.5+ x86-64 Details for icegrams-2.1.0-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
icegrams-2.1.0-cp310-abi3-macosx_11_0_arm64.whl CPython 3.10 abi3 macOS 11.0+ ARM64 Details for icegrams-2.1.0-cp310-abi3-macosx_11_0_arm64.whl
icegrams-2.1.0-cp310-abi3-macosx_10_9_x86_64.whl CPython 3.10 abi3 macOS 10.9+ x86-64 Details for icegrams-2.1.0-cp310-abi3-macosx_10_9_x86_64.whl

Total release size: 2.3 MB

Release files / icegrams-2.1.0.tar.gz

Download URL icegrams-2.1.0.tar.gz
Size 53.0 kB
Tags Source
SHA-256 checksum
How to use checksums
78d99adab0d55e6dc54d09807d48e5bb8c0c57904deebdd461a98be279c11690
BLAKE2b-256 checksum
How to use checksums
c7a12addfbeabb90c01328c6637a1035b5022ca39993e61774e5800d9b986a10
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-pp312-pypy312_pp80-win_amd64.whl

Download URL icegrams-2.1.0-pp312-pypy312_pp80-win_amd64.whl
Size 120.1 kB
Tags PyPy 3.12 PyPy 3.12 8.0 Windows x86-64
SHA-256 checksum
How to use checksums
685b634e2458d366accf705ceecf280b93f47b680870b9b1b0ef8c0eaec9ee69
BLAKE2b-256 checksum
How to use checksums
640acbd294edf7d2ae63568266ede3b1837f051b74b822ab37c094d2e928d5a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-pp312-pypy312_pp80-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL icegrams-2.1.0-pp312-pypy312_pp80-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 60.8 kB
Tags Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 PyPy 3.12 PyPy 3.12 8.0
SHA-256 checksum
How to use checksums
7c751c1222686b993b915f81285c78d1356882b507307388fd9032887b539965
BLAKE2b-256 checksum
How to use checksums
dfa8bf78e1d723a1feee840a3417d0f1aaa168f2a097b82918dab3d6e2ece873
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-pp312-pypy312_pp80-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL icegrams-2.1.0-pp312-pypy312_pp80-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 59.8 kB
Tags Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64 PyPy 3.12 PyPy 3.12 8.0
SHA-256 checksum
How to use checksums
0a4d193edc1b6fafae9250c6c76326a85e3d44e0153e0b15e1d806fa5e6ffb9b
BLAKE2b-256 checksum
How to use checksums
16a628326ec4277be4acbac850675e05c436a9823c0b126989575bf5c264cc82
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-pp312-pypy312_pp80-macosx_11_0_arm64.whl

Download URL icegrams-2.1.0-pp312-pypy312_pp80-macosx_11_0_arm64.whl
Size 60.4 kB
Tags PyPy 3.12 PyPy 3.12 8.0 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
31c04831dde266b878f7dd09284f2487f18d39b556169383be4ce4bb4afb3cce
BLAKE2b-256 checksum
How to use checksums
291c9c78d3462c2f834a3ee355e964c21910913fa1a4a277add58099831a46e5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-pp312-pypy312_pp80-macosx_10_15_x86_64.whl

Download URL icegrams-2.1.0-pp312-pypy312_pp80-macosx_10_15_x86_64.whl
Size 57.7 kB
Tags PyPy 3.12 PyPy 3.12 8.0 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
b2b1a8e1ffacf6c1bccc9ed1c537c0ce9d77ac6d8bb8f1193ccfd682ebba9a71
BLAKE2b-256 checksum
How to use checksums
45f4836574e2f15ff1befbb1395defa3f982a00c871ff499e89cc208dc50a4da
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-pp311-pypy311_pp80-win_amd64.whl

Download URL icegrams-2.1.0-pp311-pypy311_pp80-win_amd64.whl
Size 120.1 kB
Tags PyPy 3.11 PyPy 3.11 8.0 Windows x86-64
SHA-256 checksum
How to use checksums
b51bcf371c1a86847de905f122b4e09cafe04a99ee1fe44228c049dbedfbcc7a
BLAKE2b-256 checksum
How to use checksums
885ccaabd12062b715342352c745e3b992de49acdac79e5abc58080081df5566
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-pp311-pypy311_pp80-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL icegrams-2.1.0-pp311-pypy311_pp80-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 60.8 kB
Tags Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 PyPy 3.11 PyPy 3.11 8.0
SHA-256 checksum
How to use checksums
f7a94b0a5ea84d85071a026ad3770794192e0ed442e3e03e8dd23d0c6688ab51
BLAKE2b-256 checksum
How to use checksums
3af783f8b2035935d14b3edc09f7c5b9bdeda9d47c671158e9803bbdf43b0439
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-pp311-pypy311_pp80-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL icegrams-2.1.0-pp311-pypy311_pp80-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 59.8 kB
Tags Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64 PyPy 3.11 PyPy 3.11 8.0
SHA-256 checksum
How to use checksums
e424beae747efd2c845f85a4ecab94a44eaf865178c67863c5fc74e9744cb49f
BLAKE2b-256 checksum
How to use checksums
235f2c8851c04ab86d6b975cd902e7fa372d8f2b37a6d3ee41adb02f5a209cd9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-pp311-pypy311_pp80-macosx_11_0_arm64.whl

Download URL icegrams-2.1.0-pp311-pypy311_pp80-macosx_11_0_arm64.whl
Size 60.4 kB
Tags PyPy 3.11 PyPy 3.11 8.0 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
9336fe1feb0642f0f2c56bcf6e9a56038afe5254b4e18673563ab9e96d3e5d4e
BLAKE2b-256 checksum
How to use checksums
ffbd1f48351330d443a99bd39e32c631ded7785c0529820bf3bc9845bec37063
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-pp311-pypy311_pp80-macosx_10_15_x86_64.whl

Download URL icegrams-2.1.0-pp311-pypy311_pp80-macosx_10_15_x86_64.whl
Size 57.7 kB
Tags PyPy 3.11 PyPy 3.11 8.0 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
3e8757ae3005bdd1a79f8421961d7a85e2b704850aa981869543457165f1f9e0
BLAKE2b-256 checksum
How to use checksums
2c37efca392a7ddf00fe41c0642218d1fd4f1c83474d8c582bc45dfcba896c99
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-pp311-pypy311_pp73-win_amd64.whl

Download URL icegrams-2.1.0-pp311-pypy311_pp73-win_amd64.whl
Size 68.5 kB
Tags PyPy 3.11 PyPy 3.11 7.3 Windows x86-64
SHA-256 checksum
How to use checksums
9023d1c4e17af709188ebb68fcd46f295ef98c3c06ef94f830c1fdde5e1ea3f9
BLAKE2b-256 checksum
How to use checksums
e74181097957f0ffc9c43da27201be2541fa3f2a62223e539399e521cbf01d8a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-pp311-pypy311_pp73-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL icegrams-2.1.0-pp311-pypy311_pp73-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 60.8 kB
Tags Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 PyPy 3.11 PyPy 3.11 7.3
SHA-256 checksum
How to use checksums
ead8e3e6d51a1f72425d8686dd0359a7c47f83474b6aa1f5b62bffb3921ba4c6
BLAKE2b-256 checksum
How to use checksums
d7aad421d095f02a4b6048b9631c838138a5b9d245edd9188242367db5bce499
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-pp311-pypy311_pp73-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL icegrams-2.1.0-pp311-pypy311_pp73-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 59.8 kB
Tags Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64 PyPy 3.11 PyPy 3.11 7.3
SHA-256 checksum
How to use checksums
d8e0331914b91a22b55610c61f18ebda61114457cbb99e85092ead4aa9bb1046
BLAKE2b-256 checksum
How to use checksums
9e8d0dd80668bb2802c1b36a787c15a020beb23b20f68cf63900e50e9aa783b7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl

Download URL icegrams-2.1.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl
Size 68.1 kB
Tags PyPy 3.11 PyPy 3.11 7.3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
60bbb1fc1f468fd7be5cbffa1e970ad721d2549465a4feff10b706fe0a50b8f5
BLAKE2b-256 checksum
How to use checksums
11d35514887cf01ed147180b00118936d82f06eb925c7c2418b8a4b45653e173
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-pp311-pypy311_pp73-macosx_10_15_x86_64.whl

Download URL icegrams-2.1.0-pp311-pypy311_pp73-macosx_10_15_x86_64.whl
Size 62.7 kB
Tags PyPy 3.11 PyPy 3.11 7.3 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
38544884be8010395851912937c23ee3adae47ab0750357885d720ba91711c79
BLAKE2b-256 checksum
How to use checksums
5950e565f3a1f8708c4890bf865ab57393fb0bc17de5a01d89325a27677ba80d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-cp315-cp315t-win_amd64.whl

Download URL icegrams-2.1.0-cp315-cp315t-win_amd64.whl
Size 64.8 kB
Tags CPython 3.15 CPython 3.15 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
937dafb12c655fb2e694351d7334733dca10de54ded2c7c28f5628dc993ac54c
BLAKE2b-256 checksum
How to use checksums
caac2bb1170c7dd1cd393a0bdfb68e7bdbf7d02a9a3ccd5dd7ac591afe2025e1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-cp315-cp315t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL icegrams-2.1.0-cp315-cp315t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 97.5 kB
Tags CPython 3.15 CPython 3.15 free-threading Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
8593e52c90a62c078b86a4c6abf6ba3a1740a424568ac9e75904c94dab28589c
BLAKE2b-256 checksum
How to use checksums
d4930dbbe478deddeaf7a583591f60dcafad2c87433dd44034ef9a8fe1eaaf9d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-cp315-cp315t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL icegrams-2.1.0-cp315-cp315t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 97.1 kB
Tags CPython 3.15 CPython 3.15 free-threading Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
71c9bc7d8677516bc80df0b3254b6fa4ee00f36e80ce2d5e2c0071105c70f42b
BLAKE2b-256 checksum
How to use checksums
2301d587febf3877ea85f6a68e42b8df716d46b039a330642ee8636715298f85
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-cp315-cp315t-macosx_11_0_arm64.whl

Download URL icegrams-2.1.0-cp315-cp315t-macosx_11_0_arm64.whl
Size 64.7 kB
Tags CPython 3.15 CPython 3.15 free-threading macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
289a21257d24117e8c8b83abfc019799f2b18f7df7a94bd81919e1f49a853c35
BLAKE2b-256 checksum
How to use checksums
d862b87fdd50637899ce0671892cc1f379b03443866533edf2e8743886a5272f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-cp315-cp315t-macosx_10_15_x86_64.whl

Download URL icegrams-2.1.0-cp315-cp315t-macosx_10_15_x86_64.whl
Size 62.3 kB
Tags CPython 3.15 CPython 3.15 free-threading macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
a85156190a1d4f2b8a3b9483850ef99135f1140743fbf0bb8ced80a45d50ff41
BLAKE2b-256 checksum
How to use checksums
545838d2d819c5cb1631abb9a1affe9046b446467ba2e0dc0b1c1ee69191d571
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-cp314-cp314t-win_amd64.whl

Download URL icegrams-2.1.0-cp314-cp314t-win_amd64.whl
Size 64.9 kB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
1c882305e78f086145fe42cf7203eb9e0df526d49df90bebd1e082e5a1e5bfc8
BLAKE2b-256 checksum
How to use checksums
cdb4191a05c81bad7ad756272b0481e2bf653d5434b87fb7522dfd4ac1ee0683
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL icegrams-2.1.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 106.8 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
e0129a2396a034ec9dd0b5c07d2e63bfb62e792d5d07cc7cec45fe26f69cd97a
BLAKE2b-256 checksum
How to use checksums
580303f626448ea15dd30933f02732ea1a91e22e96b3c9a6b474034daf69da48
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL icegrams-2.1.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 106.3 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
1ca1405296982c568b0721a02dce89b85fb62e8efc5e1a926509d7bd97fc7d75
BLAKE2b-256 checksum
How to use checksums
209013b77390b9f12e70015fc8b286b2543258efc7ad1a5831883700b92c380e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-cp314-cp314t-macosx_11_0_arm64.whl

Download URL icegrams-2.1.0-cp314-cp314t-macosx_11_0_arm64.whl
Size 64.8 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
f15a9a3c0895056bb21310df6a33e22dd968945ab342b7a04637f14005cb7e8a
BLAKE2b-256 checksum
How to use checksums
dee05c372fb7d7728f12660b9fe143b28a21736df988652f166aab86eaae345a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-cp314-cp314t-macosx_10_15_x86_64.whl

Download URL icegrams-2.1.0-cp314-cp314t-macosx_10_15_x86_64.whl
Size 62.5 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
d1610d9cb39894a3e6f8f451ca6e96f59338ddf6d5f746164e5e1c155082b1ce
BLAKE2b-256 checksum
How to use checksums
c0c41109fbeab52d2f477eac605bcca27a9a90d4d45209c86a3b4bd25edc6660
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-cp310-abi3-win_amd64.whl

Download URL icegrams-2.1.0-cp310-abi3-win_amd64.whl
Size 64.0 kB
Tags CPython 3.10 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
e19ea0af8b1bbfcae94ba07d95a51799fd65967dc4e94b23aaba70414b126eb9
BLAKE2b-256 checksum
How to use checksums
9caccd57f83ffa894c09ea17a491a334ecead169713aa55cfce8312e35bf9f5d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL icegrams-2.1.0-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 100.2 kB
Tags CPython 3.10 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 abi3
SHA-256 checksum
How to use checksums
02d4d90df4e5524c6e4cba886a65eddc30b416804b8498a1702d1fb13dde50e8
BLAKE2b-256 checksum
How to use checksums
b7c56f6dc25332cfb805ed7e6e0bbc3f3181d78e139b564ff21a05c703128304
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL icegrams-2.1.0-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 100.0 kB
Tags CPython 3.10 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64 abi3
SHA-256 checksum
How to use checksums
6de0825ef82d52dbf11f0c2661c627b27b1c9832bf8888237dc1d260cf4e9f47
BLAKE2b-256 checksum
How to use checksums
9cf7d57beb6ddfcc700467bb61e938fd137217c775a8c176d009e9a18bea476a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-cp310-abi3-macosx_11_0_arm64.whl

Download URL icegrams-2.1.0-cp310-abi3-macosx_11_0_arm64.whl
Size 64.6 kB
Tags CPython 3.10 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
98e4a6b08a605d553968d39dce34ffb5602e22a5eed6f20c46c04a91269d7c13
BLAKE2b-256 checksum
How to use checksums
69e517f4f498970431ccfadd1e374880aad96693c80a6902c146e2007c1a3dd6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / icegrams-2.1.0-cp310-abi3-macosx_10_9_x86_64.whl

Download URL icegrams-2.1.0-cp310-abi3-macosx_10_9_x86_64.whl
Size 62.3 kB
Tags CPython 3.10 abi3 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
166d5d4e07dea62cdbababa29524db25d4704d7713248086f3d69c458b252c1f
BLAKE2b-256 checksum
How to use checksums
4af2d86cedec58455856aa1aa24643cb1e3aff3e79bd4c5188af55a7c1c84c8c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Security for icegrams 2.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 31 files in this release have been uploaded with provenance metadata.

Select from 31 files

Attestation for icegrams-2.1.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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