Skip to main content

Provides a sub-microsecond-precise thread-safe timer and helper methods to work with date and time data.

Project description

ataraxis-time

A Python library that provides a sub-microsecond-precise thread-safe timer and helper methods to work with date and time data.

PyPI - Version PyPI - Python Version uv Ruff type-checked: mypy PyPI - License PyPI - Status PyPI - Wheel


Detailed Description

This library uses the 'chrono' C++ library to access the fastest available system clock and use it to provide interval timing and delay functionality via a Python binding API. While the performance of the timer heavily depends on the particular system configuration and utilization, most modern CPUs should be capable of sub-microsecond precision using this timer. Due to using a C-extension to provide interval and delay timing functionality, the library is thread- and process-safe and releases the GIL when using the appropriate delay command. Additionally, the library offers a set of standalone helper functions that can be used to manipulate date and time data.

While the library was written to integrate with other Sun Lab projects, it can be used as a standalone library for non-lab projects with no additional modification.


Features

  • Supports Windows, Linux, and OSx.
  • Sub-microsecond precision on modern CPUs (~ 3 GHz+) during delay and interval timing.
  • Releases GIL during (non-blocking) delay timing even when using microsecond and nanosecond precision.
  • Pure-python API.
  • Fast C++ core with direct extension API access via nanobind.
  • GPL 3 License.

Table of Contents


Dependencies

For users, all library dependencies are installed automatically for all supported installation methods (see Installation section). For developers, see the Developers section for information on installing additional development dependencies.


Installation

Source

Note. Building from source may require additional build-components to be available to compile the C++ portion of the library. It is highly advised to use the option to install from PIP or CONDA instead.

  1. Download this repository to your local machine using your preferred method, such as git-cloning. Optionally, use one of the stable releases that include precompiled binary wheels in addition to source code.
  2. cd to the root directory of the project using your command line interface of choice.
  3. Run python -m pip install . to install the project. Alternatively, if using a distribution with precompiled binaries, use python -m pip install WHEEL_PATH, replacing 'WHEEL_PATH' with the path to the wheel file.
  4. Optionally, run the timer benchmark using benchmark-timer command from your command line interface (no need to use 'python' directive). You can use benchmark-timer --help command to see the list of additional configuration parameters that can be used to customize the benchmark behavior.

PIP

Use the following command to install the library using PIP: pip install ataraxis-time

Conda / Mamba

Note. Due to conda-forge contributing process being more nuanced than pip uploads, conda versions may lag behind pip and source code distributions.

Use the following command to install the library using Conda or Mamba: conda install ataraxis-time


Usage

Precision Timer

This is a minimal example of how to use the precision timer class from this library:

# First, import the timer class.
from ataraxis_time import PrecisionTimer
import time as tm

# Then, instantiate the timer class using the desired precision. Supported precisions are: 'ns' (nanoseconds),
# 'us' (microseconds), 'ms' (milliseconds), and 's' seconds.
timer = PrecisionTimer('us')

# Interval timing example
timer.reset()  # Resets (re-bases) the timer
tm.sleep(1)  # Simulates work (for 1 second)
print(f'Work time: {timer.elapsed} us')  # This returns the 'work' duration using the precision units of the timer.

print()  # Separates interval example from delay examples

# Delay example:
for i in range(10):
    print(f'us delay iteration: {i}')
    timer.delay_block(500)  # Delays for 500 microseconds, does not release the GIL

print()  # Separates the us loop from ms loop

timer.set_precision('ms')  # Switches timer precision to milliseconds
for i in range(10):
    print(f'ms delay iteration: {i}')
    timer.delay_noblock(500)  # Delays for 500 milliseconds, releases the GIL

Date & Time Helper Methods

This is a minimal example of how to use helper-functions from this library:

# Import the desired function(s) from the time_helpers sub-package.
from ataraxis_time.time_helpers import convert_time, get_timestamp

# Time converter example. The function can convert single inputs and lists / numpy arrays.
initial_time = 12
time_in_seconds = convert_time(time=initial_time, from_units='d', to_units='s')  # Returns 1036800.0

# Obtains the current date and time and uses it to generate a timestamp that can be used in file-names (for example).
dt = get_timestamp(time_separator='-')  # Returns 2024-06-18-00-06-25 (yyyy-mm-dd-hh-mm-ss)

API Documentation

See the API documentation for the detailed description of the methods and classes exposed by components of this library. The documentation also covers the C++ source code and benchmark-timer command line interface command.


Developers

This section provides installation, dependency, and build-system instructions for the developers that want to modify the source code of this library. Additionally, it contains instructions for recreating the conda environments that were used during development from the included .yml files.

Installing the library

  1. Download this repository to your local machine using your preferred method, such as git-cloning.
  2. cd to the root directory of the project using your command line interface of choice.
  3. Install development dependencies. You have multiple options of satisfying this requirement:
    1. Preferred Method: Use conda or pip to install tox or use an environment that has it installed and call tox -e import to automatically import the os-specific development environment included with the source code in your local conda distribution. Alternatively, you can use tox -e create to create the environment from scratch and automatically install the necessary dependencies using pyproject.toml file. See environments section for other environment installation methods.
    2. Run python -m pip install .'[dev]' command to install development dependencies and the library. For some systems, you may need to use a slightly modified version of this command: python -m pip install .[dev].
    3. As long as you have an environment with tox installed and do not intend to run any code outside the predefined project automation pipelines, tox will automatically install all required dependencies for each task.

Note: When using tox automation, having a local version of the library may interfere with tox tasks that attempt to build the library using an isolated environment. While the problem is rare, our 'tox' pipelines automatically install and uninstall the project from its' conda environment. This relies on a static tox configuration and will only target the project-specific environment, so it is advised to always tox -e import or tox -e create the project environment using 'tox' before running other tox commands.

Additional Dependencies

In addition to installing the required python packages, separately install the following dependencies:

  1. Doxygen, if you want to generate C++ code documentation.
  2. An appropriate build tool or Docker, if you intend to build binary wheels via cibuildwheel (See the link for information on which dependencies to install).
  3. Python distributions, one for each version that you intend to support. Currently, this library supports 3.10, 3.11, and 3.12. The easiest way to get tox to work as intended is to have separate python distributions, but using pyenv is a good alternative too. This is needed for the 'test' task to work as intended.

Development Automation

This project comes with a fully configured set of automation pipelines implemented using tox. Check tox.ini file for details about available pipelines and their implementation. Alternatively, call tox list from the root directory of the project to see the list of available tasks.

Note! All commits to this project have to successfully complete the tox task before being pushed to GitHub. To minimize the runtime task for this task, use tox --parallel.

Environments

All environments used during development are exported as .yml files and as spec.txt files to the envs folder. The environment snapshots were taken on each of the three explicitly supported OS families: Windows 11, OSx (M1) 14.5 and Linux Ubuntu 22.04 LTS.

Note! Since the OSx environment was built against an M1 (Apple Silicon) platform and may not work on Intel-based Apple devices.

To install the development environment for your OS:

  1. Download this repository to your local machine using your preferred method, such as git-cloning.
  2. cd into the envs folder.
  3. Use one of the installation methods below:
    1. Preferred Method: Install tox or use another environment with already installed tox and call tox -e import.
    2. Alternative Method: Run conda env create -f ENVNAME.yml or mamba env create -f ENVNAME.yml. Replace 'ENVNAME.yml' with the name of the environment you want to install (axt_dev_osx for OSx, axt_dev_win for Windows, and axt_dev_lin for Linux).

Hint: while only the platforms mentioned above were explicitly evaluated, this project is likely to work on any common OS, but may require additional configurations steps.

Since the release of ataraxis-automation version 2.0.0 you can also create the development environment from scratch via pyproject.toml dependencies. To do this, use tox -e create from project root directory.

Automation Troubleshooting

Many packages used in 'tox' automation pipelines (uv, mypy, ruff) and 'tox' itself are prone to various failures. In most cases, this is related to their caching behavior. Despite a considerable effort to disable caching behavior known to be problematic, in some cases it cannot or should not be eliminated. If you run into an unintelligible error with any of the automation components, deleting the corresponding .cache (.tox, .ruff_cache, .mypy_cache, etc.) manually or via a cli command is very likely to fix the issue.


Versioning

We use semantic versioning for this project. For the versions available, see the tags on this repository.


Authors


License

This project is licensed under the GPL3 License: see the LICENSE file for details.


Acknowledgments

  • All Sun Lab members for providing the inspiration and comments during the development of this library.
  • My NBB Cohort for answering 'random questions' pertaining to the desired library functionality.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ataraxis_time-1.1.0.tar.gz (74.5 kB view details)

Uploaded Source

Built Distributions

ataraxis_time-1.1.0-pp310-pypy310_pp73-win_amd64.whl (89.6 kB view details)

Uploaded PyPy Windows x86-64

ataraxis_time-1.1.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (107.8 kB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

ataraxis_time-1.1.0-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (110.9 kB view details)

Uploaded PyPy manylinux: glibc 2.17+ i686

ataraxis_time-1.1.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (104.3 kB view details)

Uploaded PyPy manylinux: glibc 2.17+ ARM64

ataraxis_time-1.1.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl (81.7 kB view details)

Uploaded PyPy macOS 11.0+ ARM64

ataraxis_time-1.1.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl (82.8 kB view details)

Uploaded PyPy macOS 10.15+ x86-64

ataraxis_time-1.1.0-cp312-abi3-win_arm64.whl (83.9 kB view details)

Uploaded CPython 3.12+ Windows ARM64

ataraxis_time-1.1.0-cp312-abi3-win_amd64.whl (89.5 kB view details)

Uploaded CPython 3.12+ Windows x86-64

ataraxis_time-1.1.0-cp312-abi3-win32.whl (85.4 kB view details)

Uploaded CPython 3.12+ Windows x86

ataraxis_time-1.1.0-cp312-abi3-musllinux_1_2_x86_64.whl (542.1 kB view details)

Uploaded CPython 3.12+ musllinux: musl 1.2+ x86-64

ataraxis_time-1.1.0-cp312-abi3-musllinux_1_2_i686.whl (582.0 kB view details)

Uploaded CPython 3.12+ musllinux: musl 1.2+ i686

ataraxis_time-1.1.0-cp312-abi3-musllinux_1_2_aarch64.whl (522.2 kB view details)

Uploaded CPython 3.12+ musllinux: musl 1.2+ ARM64

ataraxis_time-1.1.0-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (108.0 kB view details)

Uploaded CPython 3.12+ manylinux: glibc 2.17+ x86-64

ataraxis_time-1.1.0-cp312-abi3-manylinux_2_17_i686.manylinux2014_i686.whl (110.9 kB view details)

Uploaded CPython 3.12+ manylinux: glibc 2.17+ i686

ataraxis_time-1.1.0-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (104.2 kB view details)

Uploaded CPython 3.12+ manylinux: glibc 2.17+ ARM64

ataraxis_time-1.1.0-cp312-abi3-macosx_11_0_arm64.whl (81.9 kB view details)

Uploaded CPython 3.12+ macOS 11.0+ ARM64

ataraxis_time-1.1.0-cp312-abi3-macosx_10_14_x86_64.whl (83.9 kB view details)

Uploaded CPython 3.12+ macOS 10.14+ x86-64

ataraxis_time-1.1.0-cp311-cp311-win_arm64.whl (85.4 kB view details)

Uploaded CPython 3.11 Windows ARM64

ataraxis_time-1.1.0-cp311-cp311-win_amd64.whl (91.5 kB view details)

Uploaded CPython 3.11 Windows x86-64

ataraxis_time-1.1.0-cp311-cp311-win32.whl (86.9 kB view details)

Uploaded CPython 3.11 Windows x86

ataraxis_time-1.1.0-cp311-cp311-musllinux_1_2_x86_64.whl (545.1 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.2+ x86-64

ataraxis_time-1.1.0-cp311-cp311-musllinux_1_2_i686.whl (585.7 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.2+ i686

ataraxis_time-1.1.0-cp311-cp311-musllinux_1_2_aarch64.whl (524.9 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.2+ ARM64

ataraxis_time-1.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (110.9 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

ataraxis_time-1.1.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (114.1 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686

ataraxis_time-1.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (106.8 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

ataraxis_time-1.1.0-cp311-cp311-macosx_11_0_arm64.whl (84.2 kB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

ataraxis_time-1.1.0-cp311-cp311-macosx_10_14_x86_64.whl (86.4 kB view details)

Uploaded CPython 3.11 macOS 10.14+ x86-64

ataraxis_time-1.1.0-cp310-cp310-win_arm64.whl (85.5 kB view details)

Uploaded CPython 3.10 Windows ARM64

ataraxis_time-1.1.0-cp310-cp310-win_amd64.whl (91.6 kB view details)

Uploaded CPython 3.10 Windows x86-64

ataraxis_time-1.1.0-cp310-cp310-win32.whl (87.0 kB view details)

Uploaded CPython 3.10 Windows x86

ataraxis_time-1.1.0-cp310-cp310-musllinux_1_2_x86_64.whl (545.2 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.2+ x86-64

ataraxis_time-1.1.0-cp310-cp310-musllinux_1_2_i686.whl (586.0 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.2+ i686

ataraxis_time-1.1.0-cp310-cp310-musllinux_1_2_aarch64.whl (524.9 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.2+ ARM64

ataraxis_time-1.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (111.0 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

ataraxis_time-1.1.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (114.2 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686

ataraxis_time-1.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (106.9 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

ataraxis_time-1.1.0-cp310-cp310-macosx_11_0_arm64.whl (84.3 kB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

ataraxis_time-1.1.0-cp310-cp310-macosx_10_14_x86_64.whl (86.5 kB view details)

Uploaded CPython 3.10 macOS 10.14+ x86-64

File details

Details for the file ataraxis_time-1.1.0.tar.gz.

File metadata

  • Download URL: ataraxis_time-1.1.0.tar.gz
  • Upload date:
  • Size: 74.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for ataraxis_time-1.1.0.tar.gz
Algorithm Hash digest
SHA256 9567730b596f6f232dfb8491a66d464fd86b6773fd87a0ca81ce3a9a17f5e134
MD5 fc0aabb547769fe361c9fda668105ed6
BLAKE2b-256 52f00a53015de5ec599a43468df9c35c7bcf7e25b2987d8c38dc5f8d0fc61b98

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-pp310-pypy310_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-pp310-pypy310_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 4e743b49c7050a294b7e957497a9ba59524d072ac5d72b1a04b40dc5740bc82f
MD5 06720a37bb9fca80dbd192e095b7f4be
BLAKE2b-256 c4fcbd64700cc19b232a6a460e48f6509ecfbff1d75710931401b6e145aeb93e

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 09965e7f126c0c09da91ffd933c40cf8c1dfec5b618695ddb8bd692137595d7d
MD5 867a7d939e2e9cb4c373a15458f85a56
BLAKE2b-256 1b8f28769a5583df0ba79390110155da291b4e7cdd50d08d7dd37f6d407430df

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 3186e849d45a00fb041a23860b0e69b07de554900fbadb49a9ffea635a8046ed
MD5 3c9c0067f46ae49c4ee2dcee58606556
BLAKE2b-256 6ae8a6d8c947bd5fc9893cfb58a787e67f10a16daa102968317568935052d429

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 da79f314bf6809b38706531539d56d5fe2fa765c2b162283ed8ef88f294159dd
MD5 b0a0a4f73321312c9421831c4708f033
BLAKE2b-256 0c6a47daf051cdaacfbf1234e43c454fb3a207b9bb0efa8011fdde877a6b78b5

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f2485e08f853ef72bc6bea3d21a80d83224538a24d5814a24f2d63df6d020295
MD5 b5cb978c82956787431277129648fcc7
BLAKE2b-256 e566eabd0656ab86d2534121cc917868cddac71a0696171a0822768774af0d63

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 d2466b8aa3b5f65aed9baf8a37dd996ae200afd81652fa8c4391f34c06458fb8
MD5 5018c51f9e8b49d4fbdf9e5ca5f23c1d
BLAKE2b-256 0c0965d2b66c5152993a8370e342f2d4a1f47ebe5adcfb7bae49041ec3ffbd48

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp312-abi3-win_arm64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp312-abi3-win_arm64.whl
Algorithm Hash digest
SHA256 c3ae2269dc8676f2109d9d71ea8d870e54c5d857af593877f38992708fc45d5e
MD5 8d66d6d4714c23231f717c715c242913
BLAKE2b-256 13ee70ee4a2e40d04597c6a9fbbe95a4534dccb41c7f959a3acd13ea7258645f

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp312-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp312-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 80061352fb2f41ece7456b24a92ec63bd5e650a2e01960175b35e395fc0280df
MD5 ea3c1165d78be5ab02f88c88f45d1135
BLAKE2b-256 77121be2ff9c59b48d168ebb562327d3c635a0f16f5ce7ffb15f6c0a6daa0e3b

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp312-abi3-win32.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp312-abi3-win32.whl
Algorithm Hash digest
SHA256 3f220a9d446f6d6ca2d32dd6ab0b5c976963b35a74fd5929af21fa484dd521db
MD5 e416357174f0c1c5519deca31b498c76
BLAKE2b-256 806b4e16bfbe8d274637cff7387ba26c7112502b8caadbb73bf4b299dd4eda51

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp312-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp312-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 60f90da0a717bdaa4f1580d1c13e8abfdee519ef26dfc4e6af540c0031a74df2
MD5 9f268c4b1c57ac4d6cca6283976c39d4
BLAKE2b-256 4416e66f8ba2fe6f13469578f254314c9144218e4140c04190500721efcbb1a9

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp312-abi3-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp312-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 78ebd5334eaa1a08cdd1dcf2003cb2f53718f685df6dcbebd596b7061a159ba0
MD5 92f46e3fdb8c6925738233818342e66b
BLAKE2b-256 939f258912db1900f9a66f5ce09aacefb6bb11a8d5bda597dad6ec49d6459c48

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp312-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp312-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 3df59da0d9dd82893bf6729e149dd1604947336d818448bcedbb2225dafe3cf4
MD5 5eebb9494c81c213bab1754c8185d51c
BLAKE2b-256 2f49839e553e6b4c5b26eb275ce0c3e6daf591d0453d2d61e3457d80b18e1d97

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5d0a476cc599f46680835de54b25b99e7f6c93066059b050c0f5ed33e859ae9a
MD5 5f0b40f48b58bf94dc7a17b279c25395
BLAKE2b-256 6371b22571bfef55d3e6aaf20308ed68372b3f924843c3d12833ad504d98a086

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp312-abi3-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp312-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 a69ab3eb913d122d6be9b8bdae63b445fbfafd34944998d245009522d8baf3da
MD5 47b362678fa7cd9d7ebb235d98ce6643
BLAKE2b-256 1923c812bfed44c30465db7ba46c5545918391cc0880eb9a9dbad916dbd50918

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f6f6fd1acf71a47efe8c404e26e6941cf7c2fac62056ad7c2bcbee5fccbb3077
MD5 ec53719f7fa51ae2a6011f989f734b90
BLAKE2b-256 0e81fff0640f2e7ce4ff7759d2101aeeda0c8a24c66cee13552eebc0bbeff96d

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp312-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp312-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 442d99751d2854ac9bbd7851d40c3151c1feadcf3133a324884b7cdf9381d849
MD5 ed3c5bcb4b576b91b20cd161842127db
BLAKE2b-256 d3099d1d56b8529940f0a0fa834c5f6a2afcf308529085c3a82119512e76b289

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp312-abi3-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp312-abi3-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 e22504b4255a76c4fedee9bd8001842baf11f6c910607c92bd6bb81afffb86fe
MD5 9404227a2420f0797d12fa0ae6d014c4
BLAKE2b-256 70d552f63e3f9ff6fe468465240a4b74235e8a5552ad92b0ae6da7fe6e392419

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp311-cp311-win_arm64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 2a627ae7f2e5eb4aae17b137a2e9d86f9a547346d2e3afc8ff1867633952e190
MD5 7f4c410b10cff85e1322d66a3740f5c4
BLAKE2b-256 b0db66ec47ecfc3563fe3b3a81450c7ef8118c6d32919a258b33299dadcad511

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 badbbe6246c59979d24e298c330f64e3c4a13eb8f9c24feb5251ac87e91e2537
MD5 d8e8de6411d7fa928513e83f88cdc989
BLAKE2b-256 36eaff15f3a6afa78a23dbbc8e0cf98fa3644a85801b6c8c5d50b725909a063c

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp311-cp311-win32.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 f68da180fbd090a44be155b3fc9a9d2e0081d99c9bb0efb0431da2c30f064ccf
MD5 84d4718dd17f4e9809a7cab57f1e9272
BLAKE2b-256 95bd9e715b9db55d7c9026bd3538db2f80be45eb2dfa997887d64ee860c50d6f

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0cd000429419eab5a500843d7a5e83aec379c3e68197e8d9f0978049853deea2
MD5 772416cdf4401e49d09fbd9563aeb695
BLAKE2b-256 8533635a6f85e61763b9002b47df9b552bdcae14eaf7a22e3e7264f478979333

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp311-cp311-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp311-cp311-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 d7e6bf73cf38c6ad653a1a6f48b1ffaeaea736a611644754a36fa5333ff2a5ef
MD5 f5abf6be67413250e3343477833744e1
BLAKE2b-256 51f1a7769e05cf711c00e96c1e79ae519ae0e0a35f731e9931d1a55ea99645e3

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 2a058e9e751c98e96cfc5d2962e110db976e7849c482844c015641220bd14c8f
MD5 6bfc8d893407be5834f5c1b2c1f7503b
BLAKE2b-256 9fc8d97cc21054985534334e623b692eae16f2137d17e8afd0f4e5772195984a

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 32b6ea90fc9f41daa23b8c76f70ccef96101072e83ccbc1b884bdcd514e270e9
MD5 97b2a7b5c711477e6f37439932e70961
BLAKE2b-256 2c2cd4f04e618484d908fef9d65c1289fe49ce3f8f5fe14e91da0747320ec4cc

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 6a12d097dde5433b8181d4711a3f5b8a44911f9e96eb688672f0be4a920d75f1
MD5 638ad54e5fc7b317ee03b220330f1cd4
BLAKE2b-256 c7ac517e2da4668b37f6666c971f95c771990a58d2b40dc51500d316c99e6cd5

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b238b7a1e4f29be907f410c71b6b8700c5b51bf0c115eedd53dce3c72f51932d
MD5 99da05edbf55fb5ca3155ac390a55818
BLAKE2b-256 ca956d9c289968e2ed3b0f0fcc31b53268895a8ea773a501e7d318095b9bccb0

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 afd7b0aeb5355a1359ca55f1fc5ad8151c9c8de57e5b5747bbdedd76f87bbc9c
MD5 b3b9655bb34baaa7459f440f17ff01ea
BLAKE2b-256 739bfde6e564e57aab567e522ba83837e928ac9cf1c09f7f07baf4d30104f5f8

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp311-cp311-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp311-cp311-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 4493d8cb5491bb16298de97cd96205ef1a683b37da22e108cd701d6ed52f8286
MD5 f49c387fca2ddfecdd35102330ef69cc
BLAKE2b-256 c6b90a8ad6a2c19874aa8f107f60f34b9827be0328d2e67627ad9b98b23e2bce

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp310-cp310-win_arm64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp310-cp310-win_arm64.whl
Algorithm Hash digest
SHA256 a456fdae1cb7bb77d28f7affcd62584fdb626f33a09262dc2e18f024459a71a2
MD5 1a8d6499258440d018e064166ae63bc8
BLAKE2b-256 3fee047f1bb5a38a68f2ef53729762f0b958081ffc2d60eb25558e7c435b3e55

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 d841d5837a41503856e1eb5d0798c080bf8788336fe7e0997aefe29842f407dd
MD5 0d725bdd7b21d8a53aa706f15f10a586
BLAKE2b-256 e9d457345763d3bf432eed3245ee71b0e0abc77506a7e8dd2918ff39b0d78f2b

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp310-cp310-win32.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 cc3af5d078b6ed160d992bb46f133722aeaa77ef3502b058b059641a14f28273
MD5 9ff5e84888068b8d9ebafc5e5d8c649c
BLAKE2b-256 004aecc0d4138ca2e3bc17d8e0b26ee0d21c731a598b465687fc97b7792610b5

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 9251b30c3e0a7b1b7cb11ab3725fae526134228979458fb93a88e3db28b13b3d
MD5 8179ff88a9498db0b41500b5282dd9c4
BLAKE2b-256 7eaacf78d2f70877f116c35f94a921f05e917337f865cf0e033f79e7255c7773

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp310-cp310-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp310-cp310-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 5e8da35f44fc33c59ac16be6b2fca11903b12399e60136740828f2f38868de64
MD5 45ddf4666a54dd4b6d4f0437965f9344
BLAKE2b-256 ceb7c595e95f42d5cd41b2bcf4e823fdae565fc53f36919d5fc8968f6881512c

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 94459b8788f8684df944f480e1945d5e45cb7c151f08ca28038037708662dff7
MD5 85fcb0c6dc5e674157b712f9ca0bc913
BLAKE2b-256 a8d92509f365c3840d2c5a8a9089a86490a2e3c890c86670c75a7e2a7a0c3da2

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 54600fb6b3953e33da148b3d0a831f05f91e93bc403bfeaf1a318e1aaf66a02a
MD5 d3dcfd5b41973337e89b1dcd4b9dcfb4
BLAKE2b-256 888bf818b185649b1b040954b27707c4c1d98f6296d078803278de5a05048662

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 fdf358bd8fe1612ca15868a8f46e1d482a12ea6ffaef1ead67b34b53c90675b3
MD5 65d02b00650ae33117a3b44cec496724
BLAKE2b-256 c8c1bc65419c9acb6197beb810fc13c2a4e1a335d4f46526998776c8bfa45765

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e829641ac63a94f91579157ff804d0bc228d2c0618ef08a8e3ace266648b8f36
MD5 4a87e8a2232dad1673ba9f0533102885
BLAKE2b-256 c7cb82353285926bfc0bc64919230997dd8fafc37420e97514239e6a91848c9e

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f31c7f58863ce2bca9910d73f28161bdc8ecc74a8ef84b5c795169307aa079d3
MD5 c6696fcb65b0e052c2f6b7324c688c42
BLAKE2b-256 cdb0fe7b456a9e92f9b5152a578699813b8b0620a1d45012c960f6ef1238245f

See more details on using hashes here.

File details

Details for the file ataraxis_time-1.1.0-cp310-cp310-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for ataraxis_time-1.1.0-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 6c9b09ef421a8456f9ae3e97001b4e7b4f9f96ddd6fb5408b0c5397660aac0eb
MD5 b7d6ac498ffce0e4c058e03c200ace1a
BLAKE2b-256 6025d58ed260098b4517c53f7e8bd91d340e5fda988e0a2639c3a05bbe784542

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page