Skip to main content

hstrat wordmark

PyPi codecov Codacy Badge CI Read The Docs GitHub stars Zenodo JOSS

hstrat enables phylogenetic inference on distributed digital evolution populations

Install

python3 -m pip install hstrat==1.26.2

A containerized release of hstrat is available via ghcr.io

singularity exec docker://ghcr.io/mmore500/hstrat:v1.26.2 python3 -m hstrat --help

Features

hstrat serves to enable robust, efficient extraction of evolutionary history from evolutionary simulations where centralized, direct phylogenetic tracking is not feasible. Namely, in large-scale, decentralized parallel/distributed evolutionary simulations, where agents' evolutionary lineages migrate among many cooperating processors over the course of simulation.

hstrat can

  • accurately estimate time since MRCA among two or several digital agents, even for uneven branch lengths
  • reconstruct phylogenetic trees for entire populations of evolving digital agents
  • serialize genome annotations to/from text and binary formats
  • provide low-footprint genome annotations (e.g., reasonably as low as 64 bits each)
  • be directly configured to satisfy memory use limits and/or inference accuracy requirements

hstrat operates just as well in single-processor simulation, but direct phylogenetic tracking using a tool like phylotrackpy should usually be preferred in such cases due to its capability for perfect record-keeping given centralized global simulation observability.

Example Usage

This code briefly demonstrates,

  1. initialization of a population of HereditaryStratigraphicColumn objects,
  2. generation-to-generation transmission of HereditaryStratigraphicColumn objects with simple synchronous turnover, and then
  3. reconstruction of phylogenetic history from the final population of HereditaryStratigraphicColumn objects.
from random import choice as rchoice
import alifedata_phyloinformatics_convert as apc
from hstrat import hstrat; print(f"{hstrat.__version__=}")  # when last ran?
from hstrat._auxiliary_lib import seed_random; seed_random(1)  # reproducibility

# initialize a small population of hstrat instrumentation
# (in full simulations, each column would be attached to an individual genome)
population = [hstrat.HereditaryStratigraphicColumn() for __ in range(5)]

# evolve population for 40 generations under drift
for _generation in range(40):
    population = [rchoice(population).CloneDescendant() for __ in population]

# reconstruct estimate of phylogenetic history
alifestd_df = hstrat.build_tree(population, version_pin=hstrat.__version__)
tree_ascii = apc.RosettaTree(alifestd_df).as_dendropy.as_ascii_plot(width=20)
print(tree_ascii)
hstrat.__version__='1.8.8'
              /--- 1
          /---+
       /--+   \--- 3
       |  |
   /---+  \------- 2
   |   |
+--+   \---------- 0
   |
   \-------------- 4

In actual usage, each hstrat column would be bundled with underlying genetic material of interest in the simulation --- entire genomes or, in systems with sexual recombination, individual genes. The hstrat columns are designed to operate as a neutral genetic annotation, enhancing observability of the simulation but not affecting its outcome.

How it Works

In order to enable phylogenetic inference over fully-distributed evolutionary simulation, hereditary stratigraphy adopts a paradigm akin to phylogenetic work in natural history/biology. In these fields, phylogenetic history is inferred through comparisons among genetic material of extant organisms, with --- in broad terms --- phylogenetic relatedness established through the extent of genetic similarity between organisms. Phylogenetic tracking through hstrat, similarly, is achieved through analysis of similarity/dissimilarity among genetic material sampled over populations of interest.

Rather than random mutation as with natural genetic material, however, genetic material used by hstrat is structured through hereditary stratigraphy. This methodology, described fully in our documentation, provides strong guarantees on phylogenetic inferential power, minimizes memory footprint, and allows efficient reconstruction procedures.

See here for more detail on underlying hereditary stratigraphy methodology.

Getting Started

Refer to our documentation for a quickstart guide and an annotated end-to-end usage example.

The examples/ folder provides extensive usage examples, including

  • incorporation of hstrat annotations into a custom genome class,
  • automatic stratum retention policy parameterization,
  • pairwise and population-level phylogenetic inference, and
  • phylogenetic tree reconstruction.

Interested users can find an explanation of how hereditary stratigraphy methodology implemented by hstrat works "under the hood," information on project-specific hstrat configuration, and full API listing for the hstrat package in the documentation.

Citing

If hstrat software or hereditary stratigraphy methodology contributes to a scholarly work, please cite it according to references provided here. We would love to list your project using hstrat in our documentation, see more here.

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

hcat

hcat

Metadata

Release files for hstrat 1.26.2

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

Source distribution (sdist)

Source distribution for hstrat 1.26.2
File Size Uploaded Provenance Actions
hstrat-1.26.2.tar.gz 1.1 MB Without provenance Details for hstrat-1.26.2.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for hstrat 1.26.2
File Actions
hstrat-1.26.2-pp311-pypy311_pp73-win_amd64.whl PyPy 3.11 PyPy 3.11 7.3 Windows x86-64 Details for hstrat-1.26.2-pp311-pypy311_pp73-win_amd64.whl
hstrat-1.26.2-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl PyPy 3.11 PyPy 3.11 7.3 Linux glibc 2.17+ x86-64 Details for hstrat-1.26.2-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
hstrat-1.26.2-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl PyPy 3.11 PyPy 3.11 7.3 Linux glibc 2.17+ x86-32 Details for hstrat-1.26.2-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
hstrat-1.26.2-pp311-pypy311_pp73-macosx_11_0_arm64.whl PyPy 3.11 PyPy 3.11 7.3 macOS 11.0+ ARM64 Details for hstrat-1.26.2-pp311-pypy311_pp73-macosx_11_0_arm64.whl
hstrat-1.26.2-pp310-pypy310_pp73-win_amd64.whl PyPy 3.10 PyPy 3.10 7.3 Windows x86-64 Details for hstrat-1.26.2-pp310-pypy310_pp73-win_amd64.whl
hstrat-1.26.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl PyPy 3.10 PyPy 3.10 7.3 Linux glibc 2.17+ x86-64 Details for hstrat-1.26.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
hstrat-1.26.2-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl PyPy 3.10 PyPy 3.10 7.3 Linux glibc 2.17+ x86-32 Details for hstrat-1.26.2-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
hstrat-1.26.2-pp310-pypy310_pp73-macosx_11_0_arm64.whl PyPy 3.10 PyPy 3.10 7.3 macOS 11.0+ ARM64 Details for hstrat-1.26.2-pp310-pypy310_pp73-macosx_11_0_arm64.whl
hstrat-1.26.2-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details for hstrat-1.26.2-cp313-cp313-win_amd64.whl
hstrat-1.26.2-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details for hstrat-1.26.2-cp313-cp313-musllinux_1_2_x86_64.whl
hstrat-1.26.2-cp313-cp313-musllinux_1_2_i686.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-32 Details for hstrat-1.26.2-cp313-cp313-musllinux_1_2_i686.whl
hstrat-1.26.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64 Details for hstrat-1.26.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
hstrat-1.26.2-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-32 Details for hstrat-1.26.2-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl
hstrat-1.26.2-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details for hstrat-1.26.2-cp313-cp313-macosx_11_0_arm64.whl
hstrat-1.26.2-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details for hstrat-1.26.2-cp312-cp312-win_amd64.whl
hstrat-1.26.2-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details for hstrat-1.26.2-cp312-cp312-musllinux_1_2_x86_64.whl
hstrat-1.26.2-cp312-cp312-musllinux_1_2_i686.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-32 Details for hstrat-1.26.2-cp312-cp312-musllinux_1_2_i686.whl
hstrat-1.26.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details for hstrat-1.26.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
hstrat-1.26.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-32 Details for hstrat-1.26.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
hstrat-1.26.2-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details for hstrat-1.26.2-cp312-cp312-macosx_11_0_arm64.whl
hstrat-1.26.2-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details for hstrat-1.26.2-cp311-cp311-win_amd64.whl
hstrat-1.26.2-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details for hstrat-1.26.2-cp311-cp311-musllinux_1_2_x86_64.whl
hstrat-1.26.2-cp311-cp311-musllinux_1_2_i686.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-32 Details for hstrat-1.26.2-cp311-cp311-musllinux_1_2_i686.whl
hstrat-1.26.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details for hstrat-1.26.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
hstrat-1.26.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-32 Details for hstrat-1.26.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
hstrat-1.26.2-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details for hstrat-1.26.2-cp311-cp311-macosx_11_0_arm64.whl
hstrat-1.26.2-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details for hstrat-1.26.2-cp310-cp310-win_amd64.whl
hstrat-1.26.2-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details for hstrat-1.26.2-cp310-cp310-musllinux_1_2_x86_64.whl
hstrat-1.26.2-cp310-cp310-musllinux_1_2_i686.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-32 Details for hstrat-1.26.2-cp310-cp310-musllinux_1_2_i686.whl
hstrat-1.26.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details for hstrat-1.26.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
hstrat-1.26.2-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-32 Details for hstrat-1.26.2-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
hstrat-1.26.2-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details for hstrat-1.26.2-cp310-cp310-macosx_11_0_arm64.whl

Total release size: 44.0 MB

Release files / hstrat-1.26.2.tar.gz

Download URL hstrat-1.26.2.tar.gz
Size 1.1 MB
Tags Source
SHA-256 checksum
How to use checksums
90158b8180d7278be8471a4f1c27e00ac714ecbd31f3a822a372d70b3c53de71
BLAKE2b-256 checksum
How to use checksums
69ab9198622c747f2913b3f91f2b76f93e5b28eee8da1d3cb22867c1891e59f6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-pp311-pypy311_pp73-win_amd64.whl

Download URL hstrat-1.26.2-pp311-pypy311_pp73-win_amd64.whl
Size 1.0 MB
Tags PyPy 3.11 PyPy 3.11 7.3 Windows x86-64
SHA-256 checksum
How to use checksums
fee6d626dda1319b3bb9533793258099dd851a8508e755025c2c7de4bab40f35
BLAKE2b-256 checksum
How to use checksums
4fe53809426bd5183a0e54334a05f08314fe8c2df9f40f129b873da4b7680acb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL hstrat-1.26.2-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.1 MB
Tags Linux glibc 2.17+ x86-64 PyPy 3.11 PyPy 3.11 7.3
SHA-256 checksum
How to use checksums
6a84d705b857c20a89f28d76c4c6e02222239a49e0a5627a88f838f3139949f5
BLAKE2b-256 checksum
How to use checksums
ade5da25c5ca664e30ef8d3e0c3e568386b11d37485c0d5316889a6c4d299751
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl

Download URL hstrat-1.26.2-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Size 1.1 MB
Tags Linux glibc 2.17+ x86-32 PyPy 3.11 PyPy 3.11 7.3
SHA-256 checksum
How to use checksums
9eefd6481163423e9433a632f3df23ab33d8db349394b1401ecac477d8f66abb
BLAKE2b-256 checksum
How to use checksums
bf73a4424a1b9faa932e681be0eed4caf2d64b0ecd1228eaaf582b7d343f376d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-pp311-pypy311_pp73-macosx_11_0_arm64.whl

Download URL hstrat-1.26.2-pp311-pypy311_pp73-macosx_11_0_arm64.whl
Size 1.0 MB
Tags PyPy 3.11 PyPy 3.11 7.3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
e4b428bace7cfdfa14a6617e21187c924a811774b6b053a8fd7da05133133ad3
BLAKE2b-256 checksum
How to use checksums
27be6ea7166a3be29bf17dc7a38cceba47ef0a7156c1a7fd8a141503ffe308ac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-pp310-pypy310_pp73-win_amd64.whl

Download URL hstrat-1.26.2-pp310-pypy310_pp73-win_amd64.whl
Size 1.0 MB
Tags PyPy 3.10 PyPy 3.10 7.3 Windows x86-64
SHA-256 checksum
How to use checksums
47aa3eea4ac292051e12b2b69f4bee2019ac3e0fc963ce460a25db6c0eae6c04
BLAKE2b-256 checksum
How to use checksums
21b9712317aead091e3a85ddebe2b6113a5ce631a2fd2ecae0fabe3493439e8c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL hstrat-1.26.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.1 MB
Tags Linux glibc 2.17+ x86-64 PyPy 3.10 PyPy 3.10 7.3
SHA-256 checksum
How to use checksums
8cda805aa667dcb97f852a5c84f5ffa9a0ea83cdb757d9f45db6aa6b2deec77c
BLAKE2b-256 checksum
How to use checksums
30f5ba1804343cafc133c34386d2dccf0d15620a49bddcb056c039f03d4e13f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl

Download URL hstrat-1.26.2-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Size 1.1 MB
Tags Linux glibc 2.17+ x86-32 PyPy 3.10 PyPy 3.10 7.3
SHA-256 checksum
How to use checksums
fc4e01aa9d4c2db9c684056a3dbd4c294e5a48dd3572cf06a8d1e724aa7b18c4
BLAKE2b-256 checksum
How to use checksums
df4c43d007ffb00c97b093a48bf5b77f92303aed1bae95a8f7cb5b6d4a52d3ae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-pp310-pypy310_pp73-macosx_11_0_arm64.whl

Download URL hstrat-1.26.2-pp310-pypy310_pp73-macosx_11_0_arm64.whl
Size 1.0 MB
Tags PyPy 3.10 PyPy 3.10 7.3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
895ae537e95111cb287089b7cf610e2dc3e5c0f1772854eaf38e080734e519b5
BLAKE2b-256 checksum
How to use checksums
751236bef2e041fd78835255df431f9ba93e7f0ecc5c7c9b3a2c2ddc8a2b42af
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp313-cp313-win_amd64.whl

Download URL hstrat-1.26.2-cp313-cp313-win_amd64.whl
Size 1.0 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
4b4b2a5d96c889265b24a65d8ebd48690066b9bb7488d4da673ff37d7c43fc4d
BLAKE2b-256 checksum
How to use checksums
5ecc03f69ff3532287a2ad36f57a49fcb8741e8cb0cb431ede7f2cc8fb836c27
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL hstrat-1.26.2-cp313-cp313-musllinux_1_2_x86_64.whl
Size 2.1 MB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
d4f7f6b7cbcce73babab60086011827a563042d5547c305ee8ff785ef295c2d1
BLAKE2b-256 checksum
How to use checksums
5543c8f04c4b00a4d1703ee9c4cb9e7604a3d9c3e6d492014b1601692e2b1e7a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp313-cp313-musllinux_1_2_i686.whl

Download URL hstrat-1.26.2-cp313-cp313-musllinux_1_2_i686.whl
Size 2.2 MB
Tags CPython 3.13 Linux musl 1.2+ x86-32
SHA-256 checksum
How to use checksums
b174471c1dad302e00dabcf84c2592c4a91484438ac07c2b73b14024f0e8f13e
BLAKE2b-256 checksum
How to use checksums
79e23bfa3c610dd38466a8aba27ad7f150369fdaf1be269bed84d101d0c0cc74
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL hstrat-1.26.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.1 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
fed87407b17fc84368ddb45d61a71aabbbe0d309785d6b3424fb9b83b628eb47
BLAKE2b-256 checksum
How to use checksums
c1c365b6f15902a1dea4f4bcee16f56a3d902a4308b0dcc3099edf08f6fb49e9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl

Download URL hstrat-1.26.2-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl
Size 1.1 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-32
SHA-256 checksum
How to use checksums
50949cc54845f4704f5e6a12f4c97ada053c5bf0c7fcdbadd4db34cbb5c86c22
BLAKE2b-256 checksum
How to use checksums
c409dac6e6e79550eb014d9c45243895e44b08e58f13e77d059a143b8dee6995
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp313-cp313-macosx_11_0_arm64.whl

Download URL hstrat-1.26.2-cp313-cp313-macosx_11_0_arm64.whl
Size 1.0 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
d67148f7e2234119610234427964a5718da04380ddc81b1436009c48b60517da
BLAKE2b-256 checksum
How to use checksums
359a0e24c29e7a488ab020144ea3eda2d3ff38f65204d962b3a44804bc3407f4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp312-cp312-win_amd64.whl

Download URL hstrat-1.26.2-cp312-cp312-win_amd64.whl
Size 1.0 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
2811bb9935d6a6e3821d69c0a3aec53decebd3da892ebd84eca52af528ca1b30
BLAKE2b-256 checksum
How to use checksums
54e3aa405786ff847320ad714ae21d54f317f78bc8dd20c8993e3e17885aaa64
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL hstrat-1.26.2-cp312-cp312-musllinux_1_2_x86_64.whl
Size 2.1 MB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
ae7b0b9f87039fd9a5860cc29daf3a239d60135ff43361602a8e64bab4ae6f18
BLAKE2b-256 checksum
How to use checksums
917074c06812b9effab7d3db57ac674c3b6503d0e8f21139d111930e7e661068
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp312-cp312-musllinux_1_2_i686.whl

Download URL hstrat-1.26.2-cp312-cp312-musllinux_1_2_i686.whl
Size 2.2 MB
Tags CPython 3.12 Linux musl 1.2+ x86-32
SHA-256 checksum
How to use checksums
25463a4e5c21b3a01fba56c1e5e174cecb033e11616b47eb76b2faf25a7ca11c
BLAKE2b-256 checksum
How to use checksums
58365b307f16cf807117313bab1a78df7570979ec20e5603c46f2a5c46338ae1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL hstrat-1.26.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.1 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
d3bbc206d4482210d7d0a29f14e03e618585101cef3e1a3f4f77c4b128db276b
BLAKE2b-256 checksum
How to use checksums
853647ab4c448a0be99899f091f31fa1cd4935702cd61cfbcff7f6d04cdde9bf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl

Download URL hstrat-1.26.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Size 1.1 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-32
SHA-256 checksum
How to use checksums
07b5b2c3eecbc952ea5ea3d57fe39625e76c11c7a57fea95f827e43776610f92
BLAKE2b-256 checksum
How to use checksums
a608e90507d547c65d29bd8b6b92ec9bbc5c0684e570cd177212f5ea67eb0cbc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp312-cp312-macosx_11_0_arm64.whl

Download URL hstrat-1.26.2-cp312-cp312-macosx_11_0_arm64.whl
Size 1.0 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
682dee8bf15229faa9867aecf9d9785d39a7b27c3511981c328cbf43e7bd1fe4
BLAKE2b-256 checksum
How to use checksums
fb69a0a713fe93c3c9ed5265b67bb225c0c79d2181e8d8ca766cea3f87c424a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp311-cp311-win_amd64.whl

Download URL hstrat-1.26.2-cp311-cp311-win_amd64.whl
Size 1.0 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
b8adee13cb4f08a239e1c3af1e81f472c8fab492f3a6d59ab29963c4eece93ff
BLAKE2b-256 checksum
How to use checksums
85b753148dfec8504a007890c0c909912cd7aecf5288336212bc44741507f3d5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL hstrat-1.26.2-cp311-cp311-musllinux_1_2_x86_64.whl
Size 2.1 MB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
516066052914761a6a7c5e19530e5a5cb6ec2c5c78ece3e3e33cea1f4506aaac
BLAKE2b-256 checksum
How to use checksums
e6b4af2a70b64c1f7bf73f4c5c27764dda28daa8a4dd45e4b04cfee75acea13f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp311-cp311-musllinux_1_2_i686.whl

Download URL hstrat-1.26.2-cp311-cp311-musllinux_1_2_i686.whl
Size 2.2 MB
Tags CPython 3.11 Linux musl 1.2+ x86-32
SHA-256 checksum
How to use checksums
5fa9cc732823eb9ab800d345c2e65d099510954c12b1e959034751e748362fd0
BLAKE2b-256 checksum
How to use checksums
784eff7b5cec484dfbb6662ae6f914f04a97077615218fd7ae598253e7381002
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL hstrat-1.26.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.1 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
3401a11051e77d69c45509c8fcb29d56e6b97b835c88ee53c745bdea8a78030a
BLAKE2b-256 checksum
How to use checksums
c005b812b55d50428c79187d99d46a1c8c237891e8cd531ca5bdaaff962ca35a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl

Download URL hstrat-1.26.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Size 1.1 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-32
SHA-256 checksum
How to use checksums
e88cab85b225f5d29b8d8760c0233906c41d52727c89de9b29c7a3ad99ec09f1
BLAKE2b-256 checksum
How to use checksums
ef62e074da2f9d55876f20be7858b016edb762964b4b497d53c4b8dd6623b510
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp311-cp311-macosx_11_0_arm64.whl

Download URL hstrat-1.26.2-cp311-cp311-macosx_11_0_arm64.whl
Size 1.0 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
0072d34508ccd1f8ad7ade8e4374fdc9e48da2ec7e8e7325ee771064e7e83f63
BLAKE2b-256 checksum
How to use checksums
9614e5df4acfe3451a0c8cda23cb40ea2004479206fd868920a183429dd67f53
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp310-cp310-win_amd64.whl

Download URL hstrat-1.26.2-cp310-cp310-win_amd64.whl
Size 1.0 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
5307804a2d4bbdd98493796595082bca29b501fa44753015088fb1f80b17345c
BLAKE2b-256 checksum
How to use checksums
4a2a86b1d8038c6cb3564c5c5093a8eb46d5af3d967802ab941feda50b0e5d3a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL hstrat-1.26.2-cp310-cp310-musllinux_1_2_x86_64.whl
Size 2.1 MB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
07a4e11f2be87ccafbf0e888744eabb4ee9577985490ec8024ab719a8d638ac8
BLAKE2b-256 checksum
How to use checksums
14e76b2b861d8a59c89cebd78ed667d1df0283911ad38ffdf1ad4bb00608d3c8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp310-cp310-musllinux_1_2_i686.whl

Download URL hstrat-1.26.2-cp310-cp310-musllinux_1_2_i686.whl
Size 2.2 MB
Tags CPython 3.10 Linux musl 1.2+ x86-32
SHA-256 checksum
How to use checksums
03aa7796d492415e1339df90ae0df498c6863eb5115c0c0e82fa4dd8dd6e9b6f
BLAKE2b-256 checksum
How to use checksums
4419f03f36cb0b22c99141f2075c6891b3fb2df79d2516519d5a64ebb0a96d58
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL hstrat-1.26.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.1 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
835c0f680bab6669051bdc5c267a67307966290d09cb234b183b4988439c9210
BLAKE2b-256 checksum
How to use checksums
f17c60f5e9a4f5d8e1ac475bccfbcb07bba1a3e3c4b54bb8cb00a122130eb476
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl

Download URL hstrat-1.26.2-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Size 1.1 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-32
SHA-256 checksum
How to use checksums
8ca55ef0010c7d9a8af4696dcd44e347a0b2f61a46fa5fb75698ba6c83823b27
BLAKE2b-256 checksum
How to use checksums
97ec69f5e1ac126360f09a0138b2d0656b4dcd99ee6b7bee2c246fb8d5f891d0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / hstrat-1.26.2-cp310-cp310-macosx_11_0_arm64.whl

Download URL hstrat-1.26.2-cp310-cp310-macosx_11_0_arm64.whl
Size 1.0 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
94095d3c4bd38c9e5a71bd4fb27efdd53b63f41f6c8f5636bdb0827ff9f0cd4a
BLAKE2b-256 checksum
How to use checksums
3f074decfe3d22363c5e5ec87d89e04779d8d7c80ad59f93b7d0afe6e0f09ff5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Security for hstrat 1.26.2

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

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.

Release history Release notifications | RSS feed

This release

1.26.2 This release

33 release files No provenance

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