ciso8601


Nameciso8601 JSON
Version 2.3.1 PyPI version JSON
download
home_pagehttps://github.com/closeio/ciso8601
SummaryFast ISO8601 date time parser for Python written in C
upload_time2023-10-30 19:54:34
maintainer
docs_urlNone
author
requires_python
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ========
ciso8601
========

.. image:: https://img.shields.io/circleci/project/github/closeio/ciso8601.svg
    :target: https://circleci.com/gh/closeio/ciso8601/tree/master

.. image:: https://img.shields.io/pypi/v/ciso8601.svg
    :target: https://pypi.org/project/ciso8601/

.. image:: https://img.shields.io/pypi/pyversions/ciso8601.svg
    :target: https://pypi.org/project/ciso8601/

``ciso8601`` converts `ISO 8601`_ or `RFC 3339`_ date time strings into Python datetime objects.

Since it's written as a C module, it is much faster than other Python libraries.
Tested with cPython 2.7, 3.4, 3.5, 3.6, 3.7, 3.8, 3.9, 3.10, 3.11, 3.12.

.. _ISO 8601: https://en.wikipedia.org/wiki/ISO_8601
.. _RFC 3339: https://tools.ietf.org/html/rfc3339

(Interested in working on projects like this? `Close`_ is looking for `great engineers`_ to join our team)

.. _Close: https://close.com
.. _great engineers: https://jobs.close.com


.. contents:: Contents


Quick start
-----------

.. code:: bash

  % pip install ciso8601

.. code:: python

  In [1]: import ciso8601

  In [2]: ciso8601.parse_datetime('2014-12-05T12:30:45.123456-05:30')
  Out[2]: datetime.datetime(2014, 12, 5, 12, 30, 45, 123456, tzinfo=pytz.FixedOffset(330))

  In [3]: ciso8601.parse_datetime('20141205T123045')
  Out[3]: datetime.datetime(2014, 12, 5, 12, 30, 45)

Migration to v2
---------------

Version 2.0.0 of ``ciso8601`` changed the core implementation. This was not entirely backwards compatible, and care should be taken when migrating
See `CHANGELOG`_ for the Migration Guide.

.. _CHANGELOG: https://github.com/closeio/ciso8601/blob/master/CHANGELOG.md

When should I not use ``ciso8601``?
-----------------------------------

``ciso8601`` is not necessarily the best solution for every use case (especially since Python 3.11). See `Should I use ciso8601?`_

.. _`Should I use ciso8601?`: https://github.com/closeio/ciso8601/blob/master/why_ciso8601.md

Error handling
--------------

Starting in v2.0.0, ``ciso8601`` offers strong guarantees when it comes to parsing strings.

``parse_datetime(dt: String): datetime`` is a function that takes a string and either:

* Returns a properly parsed Python datetime, **if and only if** the **entire** string conforms to the supported subset of ISO 8601
* Raises a ``ValueError`` with a description of the reason why the string doesn't conform to the supported subset of ISO 8601

If time zone information is provided, an aware datetime object will be returned. Otherwise, a naive datetime is returned.

Benchmark
---------

Parsing a timestamp with no time zone information (e.g., ``2014-01-09T21:48:00``):

.. <include:benchmark_with_no_time_zone.rst>

.. table::

    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |             Module             |Python 3.12|Python 3.11|Python 3.10|Python 3.9|Relative slowdown (versus ciso8601, latest Python)|…|Python 3.8|Python 3.7|          Python 2.7           |
    +================================+===========+===========+===========+==========+==================================================+=+==========+==========+===============================+
    |ciso8601                        |98 nsec    |90 nsec    |122 nsec   |122 nsec  |N/A                                               |…|118 nsec  |124 nsec  |134 nsec                       |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |backports.datetime_fromisoformat|N/A        |N/A        |112 nsec   |108 nsec  |0.9x                                              |…|106 nsec  |118 nsec  |N/A                            |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |datetime (builtin)              |129 nsec   |132 nsec   |N/A        |N/A       |1.3x                                              |…|N/A       |N/A       |N/A                            |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |pendulum                        |N/A        |180 nsec   |187 nsec   |186 nsec  |2.0x                                              |…|196 nsec  |200 nsec  |8.52 usec                      |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |udatetime                       |695 nsec   |662 nsec   |674 nsec   |692 nsec  |7.1x                                              |…|724 nsec  |713 nsec  |586 nsec                       |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |str2date                        |6.86 usec  |5.78 usec  |6.59 usec  |6.4 usec  |70.0x                                             |…|6.66 usec |6.96 usec |❌                             |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |iso8601utils                    |N/A        |N/A        |N/A        |8.59 usec |70.5x                                             |…|8.6 usec  |9.59 usec |11.2 usec                      |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |iso8601                         |10 usec    |8.24 usec  |8.96 usec  |9.21 usec |102.2x                                            |…|9.14 usec |9.63 usec |25.7 usec                      |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |isodate                         |11.1 usec  |8.76 usec  |10.2 usec  |9.76 usec |113.6x                                            |…|9.92 usec |11 usec   |44.1 usec                      |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |PySO8601                        |17.2 usec  |13.6 usec  |16 usec    |15.8 usec |175.3x                                            |…|16.1 usec |17.1 usec |17.7 usec                      |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |aniso8601                       |22.2 usec  |17.8 usec  |23.2 usec  |23.1 usec |227.0x                                            |…|24.3 usec |27.2 usec |30.7 usec                      |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |zulu                            |23.3 usec  |19 usec    |22 usec    |21.3 usec |237.9x                                            |…|21.6 usec |22.7 usec |N/A                            |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |maya                            |N/A        |36.1 usec  |42.5 usec  |42.7 usec |401.6x                                            |…|41.3 usec |44.2 usec |N/A                            |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |python-dateutil                 |57.6 usec  |51.4 usec  |63.3 usec  |62.6 usec |587.7x                                            |…|63.7 usec |67.3 usec |119 usec                       |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |arrow                           |62 usec    |54 usec    |65.5 usec  |65.7 usec |633.0x                                            |…|66.6 usec |70.2 usec |78.8 usec                      |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |metomi-isodatetime              |1.29 msec  |1.33 msec  |1.76 msec  |1.77 msec |13201.1x                                          |…|1.79 msec |1.91 msec |N/A                            |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |moment                          |1.81 msec  |1.65 msec  |1.75 msec  |1.79 msec |18474.8x                                          |…|1.78 msec |1.84 msec |N/A                            |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+

ciso8601 takes 98 nsec, which is **1.3x faster than datetime (builtin)**, the next fastest Python 3.12 parser in this comparison.

.. </include:benchmark_with_no_time_zone.rst>

Parsing a timestamp with time zone information (e.g., ``2014-01-09T21:48:00-05:30``):

.. <include:benchmark_with_time_zone.rst>

.. table::

    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |             Module             |Python 3.12|Python 3.11|Python 3.10|Python 3.9|Relative slowdown (versus ciso8601, latest Python)|…|Python 3.8|Python 3.7|          Python 2.7           |
    +================================+===========+===========+===========+==========+==================================================+=+==========+==========+===============================+
    |ciso8601                        |95 nsec    |96.8 nsec  |128 nsec   |123 nsec  |N/A                                               |…|125 nsec  |125 nsec  |140 nsec                       |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |backports.datetime_fromisoformat|N/A        |N/A        |147 nsec   |149 nsec  |1.1x                                              |…|138 nsec  |149 nsec  |N/A                            |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |datetime (builtin)              |198 nsec   |207 nsec   |N/A        |N/A       |2.1x                                              |…|N/A       |N/A       |N/A                            |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |pendulum                        |N/A        |225 nsec   |214 nsec   |211 nsec  |2.3x                                              |…|219 nsec  |224 nsec  |13.5 usec                      |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |udatetime                       |799 nsec   |803 nsec   |805 nsec   |830 nsec  |8.4x                                              |…|827 nsec  |805 nsec  |768 nsec                       |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |str2date                        |7.73 usec  |6.75 usec  |7.78 usec  |7.8 usec  |81.4x                                             |…|7.74 usec |8.13 usec |❌                             |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |iso8601                         |13.7 usec  |11.3 usec  |12.7 usec  |12.5 usec |143.8x                                            |…|12.4 usec |12.6 usec |31.1 usec                      |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |isodate                         |13.7 usec  |11.3 usec  |12.9 usec  |12.7 usec |144.0x                                            |…|12.7 usec |13.9 usec |46.7 usec                      |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |iso8601utils                    |N/A        |N/A        |N/A        |21.4 usec |174.9x                                            |…|22.1 usec |23.4 usec |28.3 usec                      |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |PySO8601                        |25.1 usec  |20.4 usec  |23.2 usec  |23.8 usec |263.8x                                            |…|23.5 usec |24.8 usec |25.3 usec                      |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |zulu                            |26.3 usec  |21.4 usec  |25.7 usec  |24 usec   |277.2x                                            |…|24.5 usec |25.3 usec |N/A                            |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |aniso8601                       |27.7 usec  |23.7 usec  |30.3 usec  |30 usec   |291.3x                                            |…|31.6 usec |33.8 usec |39.2 usec                      |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |maya                            |N/A        |36 usec    |41.3 usec  |41.8 usec |372.0x                                            |…|42.4 usec |42.7 usec |N/A                            |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |python-dateutil                 |70.7 usec  |65.1 usec  |77.9 usec  |80.2 usec |744.0x                                            |…|79.4 usec |83.6 usec |100 usec                       |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |arrow                           |73 usec    |62.8 usec  |74.5 usec  |73.9 usec |768.6x                                            |…|75.1 usec |80 usec   |148 usec                       |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |metomi-isodatetime              |1.22 msec  |1.25 msec  |1.72 msec  |1.72 msec |12876.3x                                          |…|1.76 msec |1.83 msec |N/A                            |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+
    |moment                          |❌         |❌         |❌         |❌        |2305822.8x                                        |…|❌        |❌        |N/A                            |
    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+

ciso8601 takes 95 nsec, which is **2.1x faster than datetime (builtin)**, the next fastest Python 3.12 parser in this comparison.

.. </include:benchmark_with_time_zone.rst>

.. <include:benchmark_module_versions.rst>

Tested on Linux 5.15.49-linuxkit using the following modules:

.. code:: python

  aniso8601==9.0.1
  arrow==1.3.0 (on Python 3.8, 3.9, 3.10, 3.11, 3.12), arrow==1.2.3 (on Python 3.7), arrow==0.17.0 (on Python 2.7)
  backports.datetime_fromisoformat==2.0.1
  ciso8601==2.3.0
  iso8601==2.1.0 (on Python 3.8, 3.9, 3.10, 3.11, 3.12), iso8601==0.1.16 (on Python 2.7)
  iso8601utils==0.1.2
  isodate==0.6.1
  maya==0.6.1
  metomi-isodatetime==1!3.1.0
  moment==0.12.1
  pendulum==2.1.2
  PySO8601==0.2.0
  python-dateutil==2.8.2
  str2date==0.905
  udatetime==0.0.17
  zulu==2.0.0

.. </include:benchmark_module_versions.rst>

For full benchmarking details (or to run the benchmark yourself), see `benchmarking/README.rst`_

.. _`benchmarking/README.rst`: https://github.com/closeio/ciso8601/blob/master/benchmarking/README.rst

Supported subset of ISO 8601
----------------------------

.. |datetime.fromisoformat| replace:: ``datetime.fromisoformat``
.. _datetime.fromisoformat: https://docs.python.org/3/library/datetime.html#datetime.datetime.fromisoformat

``ciso8601`` only supports a subset of ISO 8601, but supports a superset of what is supported by Python itself (|datetime.fromisoformat|_), and supports the entirety of the `RFC 3339`_ specification.

Date formats
^^^^^^^^^^^^

The following date formats are supported:

.. table::
   :widths: auto

   ============================= ============== ==================
   Format                        Example        Supported
   ============================= ============== ==================
   ``YYYY-MM-DD`` (extended)     ``2018-04-29`` ✅
   ``YYYY-MM`` (extended)        ``2018-04``    ✅
   ``YYYYMMDD`` (basic)          ``20180429``   ✅
   ``YYYY-Www-D`` (week date)    ``2009-W01-1`` ✅
   ``YYYY-Www`` (week date)      ``2009-W01``   ✅
   ``YYYYWwwD`` (week date)      ``2009W011``   ✅
   ``YYYYWww`` (week date)       ``2009W01``    ✅
   ``YYYY-DDD`` (ordinal date)   ``1981-095``   ✅
   ``YYYYDDD`` (ordinal date)    ``1981095``    ✅
   ============================= ============== ==================

Uncommon ISO 8601 date formats are not supported:

.. table::
   :widths: auto

   ============================= ============== ==================
   Format                        Example        Supported
   ============================= ============== ==================
   ``--MM-DD`` (omitted year)    ``--04-29``    ❌
   ``--MMDD`` (omitted year)     ``--0429``     ❌
   ``±YYYYY-MM`` (>4 digit year) ``+10000-04``  ❌
   ``+YYYY-MM`` (leading +)      ``+2018-04``   ❌
   ``-YYYY-MM`` (negative -)     ``-2018-04``   ❌
   ============================= ============== ==================

Time formats
^^^^^^^^^^^^

Times are optional and are separated from the date by the letter ``T``.

Consistent with `RFC 3339`__, ``ciso8601`` also allows either a space character, or a lower-case ``t``, to be used instead of a ``T``.

__ https://stackoverflow.com/questions/522251/whats-the-difference-between-iso-8601-and-rfc-3339-date-formats

The following time formats are supported:

.. table::
   :widths: auto

   =================================== =================== ==============
   Format                              Example             Supported
   =================================== =================== ==============
   ``hh``                              ``11``              ✅
   ``hhmm``                            ``1130``            ✅
   ``hh:mm``                           ``11:30``           ✅
   ``hhmmss``                          ``113059``          ✅
   ``hh:mm:ss``                        ``11:30:59``        ✅
   ``hhmmss.ssssss``                   ``113059.123456``   ✅
   ``hh:mm:ss.ssssss``                 ``11:30:59.123456`` ✅
   ``hhmmss,ssssss``                   ``113059,123456``   ✅
   ``hh:mm:ss,ssssss``                 ``11:30:59,123456`` ✅
   Midnight (special case)             ``24:00:00``        ✅
   ``hh.hhh`` (fractional hours)       ``11.5``            ❌
   ``hh:mm.mmm`` (fractional minutes)  ``11:30.5``         ❌
   =================================== =================== ==============

**Note:** Python datetime objects only have microsecond precision (6 digits). Any additional precision will be truncated.

Time zone information
^^^^^^^^^^^^^^^^^^^^^

Time zone information may be provided in one of the following formats:

.. table::
   :widths: auto

   ========== ========== ===========
   Format     Example    Supported
   ========== ========== ===========
   ``Z``      ``Z``      ✅
   ``z``      ``z``      ✅
   ``±hh``    ``+11``    ✅
   ``±hhmm``  ``+1130``  ✅
   ``±hh:mm`` ``+11:30`` ✅
   ========== ========== ===========

While the ISO 8601 specification allows the use of MINUS SIGN (U+2212) in the time zone separator, ``ciso8601`` only supports the use of the HYPHEN-MINUS (U+002D) character.

Consistent with `RFC 3339`_, ``ciso8601`` also allows a lower-case ``z`` to be used instead of a ``Z``.

Strict RFC 3339 parsing
-----------------------

``ciso8601`` parses ISO 8601 datetimes, which can be thought of as a superset of `RFC 3339`_ (`roughly`_). In cases where you might want strict RFC 3339 parsing, ``ciso8601`` offers a ``parse_rfc3339`` method, which behaves in a similar manner to ``parse_datetime``:

.. _roughly: https://stackoverflow.com/questions/522251/whats-the-difference-between-iso-8601-and-rfc-3339-date-formats

``parse_rfc3339(dt: String): datetime`` is a function that takes a string and either:

* Returns a properly parsed Python datetime, **if and only if** the **entire** string conforms to RFC 3339.
* Raises a ``ValueError`` with a description of the reason why the string doesn't conform to RFC 3339.

Ignoring time zone information while parsing
--------------------------------------------

It takes more time to parse timestamps with time zone information, especially if they're not in UTC. However, there are times when you don't care about time zone information, and wish to produce naive datetimes instead.
For example, if you are certain that your program will only parse timestamps from a single time zone, you might want to strip the time zone information and only output naive datetimes.

In these limited cases, there is a second function provided.
``parse_datetime_as_naive`` will ignore any time zone information it finds and, as a result, is faster for timestamps containing time zone information.

.. code:: python

  In [1]: import ciso8601

  In [2]: ciso8601.parse_datetime_as_naive('2014-12-05T12:30:45.123456-05:30')
  Out[2]: datetime.datetime(2014, 12, 5, 12, 30, 45, 123456)

NOTE: ``parse_datetime_as_naive`` is only useful in the case where your timestamps have time zone information, but you want to ignore it. This is somewhat unusual.
If your timestamps don't have time zone information (i.e. are naive), simply use ``parse_datetime``. It is just as fast.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/closeio/ciso8601",
    "name": "ciso8601",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "",
    "author": "",
    "author_email": "",
    "download_url": "https://files.pythonhosted.org/packages/ac/bc/cf42c1b0042f91c90a6b00244f63b6fb137af15e43e29f07bb72cf955be8/ciso8601-2.3.1.tar.gz",
    "platform": null,
    "description": "========\nciso8601\n========\n\n.. image:: https://img.shields.io/circleci/project/github/closeio/ciso8601.svg\n    :target: https://circleci.com/gh/closeio/ciso8601/tree/master\n\n.. image:: https://img.shields.io/pypi/v/ciso8601.svg\n    :target: https://pypi.org/project/ciso8601/\n\n.. image:: https://img.shields.io/pypi/pyversions/ciso8601.svg\n    :target: https://pypi.org/project/ciso8601/\n\n``ciso8601`` converts `ISO 8601`_ or `RFC 3339`_ date time strings into Python datetime objects.\n\nSince it's written as a C module, it is much faster than other Python libraries.\nTested with cPython 2.7, 3.4, 3.5, 3.6, 3.7, 3.8, 3.9, 3.10, 3.11, 3.12.\n\n.. _ISO 8601: https://en.wikipedia.org/wiki/ISO_8601\n.. _RFC 3339: https://tools.ietf.org/html/rfc3339\n\n(Interested in working on projects like this? `Close`_ is looking for `great engineers`_ to join our team)\n\n.. _Close: https://close.com\n.. _great engineers: https://jobs.close.com\n\n\n.. contents:: Contents\n\n\nQuick start\n-----------\n\n.. code:: bash\n\n  % pip install ciso8601\n\n.. code:: python\n\n  In [1]: import ciso8601\n\n  In [2]: ciso8601.parse_datetime('2014-12-05T12:30:45.123456-05:30')\n  Out[2]: datetime.datetime(2014, 12, 5, 12, 30, 45, 123456, tzinfo=pytz.FixedOffset(330))\n\n  In [3]: ciso8601.parse_datetime('20141205T123045')\n  Out[3]: datetime.datetime(2014, 12, 5, 12, 30, 45)\n\nMigration to v2\n---------------\n\nVersion 2.0.0 of ``ciso8601`` changed the core implementation. This was not entirely backwards compatible, and care should be taken when migrating\nSee `CHANGELOG`_ for the Migration Guide.\n\n.. _CHANGELOG: https://github.com/closeio/ciso8601/blob/master/CHANGELOG.md\n\nWhen should I not use ``ciso8601``?\n-----------------------------------\n\n``ciso8601`` is not necessarily the best solution for every use case (especially since Python 3.11). See `Should I use ciso8601?`_\n\n.. _`Should I use ciso8601?`: https://github.com/closeio/ciso8601/blob/master/why_ciso8601.md\n\nError handling\n--------------\n\nStarting in v2.0.0, ``ciso8601`` offers strong guarantees when it comes to parsing strings.\n\n``parse_datetime(dt: String): datetime`` is a function that takes a string and either:\n\n* Returns a properly parsed Python datetime, **if and only if** the **entire** string conforms to the supported subset of ISO 8601\n* Raises a ``ValueError`` with a description of the reason why the string doesn't conform to the supported subset of ISO 8601\n\nIf time zone information is provided, an aware datetime object will be returned. Otherwise, a naive datetime is returned.\n\nBenchmark\n---------\n\nParsing a timestamp with no time zone information (e.g., ``2014-01-09T21:48:00``):\n\n.. <include:benchmark_with_no_time_zone.rst>\n\n.. table::\n\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |             Module             |Python 3.12|Python 3.11|Python 3.10|Python 3.9|Relative slowdown (versus ciso8601, latest Python)|\u2026|Python 3.8|Python 3.7|          Python 2.7           |\n    +================================+===========+===========+===========+==========+==================================================+=+==========+==========+===============================+\n    |ciso8601                        |98 nsec    |90 nsec    |122 nsec   |122 nsec  |N/A                                               |\u2026|118 nsec  |124 nsec  |134 nsec                       |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |backports.datetime_fromisoformat|N/A        |N/A        |112 nsec   |108 nsec  |0.9x                                              |\u2026|106 nsec  |118 nsec  |N/A                            |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |datetime (builtin)              |129 nsec   |132 nsec   |N/A        |N/A       |1.3x                                              |\u2026|N/A       |N/A       |N/A                            |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |pendulum                        |N/A        |180 nsec   |187 nsec   |186 nsec  |2.0x                                              |\u2026|196 nsec  |200 nsec  |8.52 usec                      |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |udatetime                       |695 nsec   |662 nsec   |674 nsec   |692 nsec  |7.1x                                              |\u2026|724 nsec  |713 nsec  |586 nsec                       |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |str2date                        |6.86 usec  |5.78 usec  |6.59 usec  |6.4 usec  |70.0x                                             |\u2026|6.66 usec |6.96 usec |\u274c                             |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |iso8601utils                    |N/A        |N/A        |N/A        |8.59 usec |70.5x                                             |\u2026|8.6 usec  |9.59 usec |11.2 usec                      |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |iso8601                         |10 usec    |8.24 usec  |8.96 usec  |9.21 usec |102.2x                                            |\u2026|9.14 usec |9.63 usec |25.7 usec                      |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |isodate                         |11.1 usec  |8.76 usec  |10.2 usec  |9.76 usec |113.6x                                            |\u2026|9.92 usec |11 usec   |44.1 usec                      |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |PySO8601                        |17.2 usec  |13.6 usec  |16 usec    |15.8 usec |175.3x                                            |\u2026|16.1 usec |17.1 usec |17.7 usec                      |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |aniso8601                       |22.2 usec  |17.8 usec  |23.2 usec  |23.1 usec |227.0x                                            |\u2026|24.3 usec |27.2 usec |30.7 usec                      |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |zulu                            |23.3 usec  |19 usec    |22 usec    |21.3 usec |237.9x                                            |\u2026|21.6 usec |22.7 usec |N/A                            |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |maya                            |N/A        |36.1 usec  |42.5 usec  |42.7 usec |401.6x                                            |\u2026|41.3 usec |44.2 usec |N/A                            |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |python-dateutil                 |57.6 usec  |51.4 usec  |63.3 usec  |62.6 usec |587.7x                                            |\u2026|63.7 usec |67.3 usec |119 usec                       |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |arrow                           |62 usec    |54 usec    |65.5 usec  |65.7 usec |633.0x                                            |\u2026|66.6 usec |70.2 usec |78.8 usec                      |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |metomi-isodatetime              |1.29 msec  |1.33 msec  |1.76 msec  |1.77 msec |13201.1x                                          |\u2026|1.79 msec |1.91 msec |N/A                            |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |moment                          |1.81 msec  |1.65 msec  |1.75 msec  |1.79 msec |18474.8x                                          |\u2026|1.78 msec |1.84 msec |N/A                            |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n\nciso8601 takes 98 nsec, which is **1.3x faster than datetime (builtin)**, the next fastest Python 3.12 parser in this comparison.\n\n.. </include:benchmark_with_no_time_zone.rst>\n\nParsing a timestamp with time zone information (e.g., ``2014-01-09T21:48:00-05:30``):\n\n.. <include:benchmark_with_time_zone.rst>\n\n.. table::\n\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |             Module             |Python 3.12|Python 3.11|Python 3.10|Python 3.9|Relative slowdown (versus ciso8601, latest Python)|\u2026|Python 3.8|Python 3.7|          Python 2.7           |\n    +================================+===========+===========+===========+==========+==================================================+=+==========+==========+===============================+\n    |ciso8601                        |95 nsec    |96.8 nsec  |128 nsec   |123 nsec  |N/A                                               |\u2026|125 nsec  |125 nsec  |140 nsec                       |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |backports.datetime_fromisoformat|N/A        |N/A        |147 nsec   |149 nsec  |1.1x                                              |\u2026|138 nsec  |149 nsec  |N/A                            |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |datetime (builtin)              |198 nsec   |207 nsec   |N/A        |N/A       |2.1x                                              |\u2026|N/A       |N/A       |N/A                            |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |pendulum                        |N/A        |225 nsec   |214 nsec   |211 nsec  |2.3x                                              |\u2026|219 nsec  |224 nsec  |13.5 usec                      |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |udatetime                       |799 nsec   |803 nsec   |805 nsec   |830 nsec  |8.4x                                              |\u2026|827 nsec  |805 nsec  |768 nsec                       |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |str2date                        |7.73 usec  |6.75 usec  |7.78 usec  |7.8 usec  |81.4x                                             |\u2026|7.74 usec |8.13 usec |\u274c                             |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |iso8601                         |13.7 usec  |11.3 usec  |12.7 usec  |12.5 usec |143.8x                                            |\u2026|12.4 usec |12.6 usec |31.1 usec                      |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |isodate                         |13.7 usec  |11.3 usec  |12.9 usec  |12.7 usec |144.0x                                            |\u2026|12.7 usec |13.9 usec |46.7 usec                      |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |iso8601utils                    |N/A        |N/A        |N/A        |21.4 usec |174.9x                                            |\u2026|22.1 usec |23.4 usec |28.3 usec                      |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |PySO8601                        |25.1 usec  |20.4 usec  |23.2 usec  |23.8 usec |263.8x                                            |\u2026|23.5 usec |24.8 usec |25.3 usec                      |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |zulu                            |26.3 usec  |21.4 usec  |25.7 usec  |24 usec   |277.2x                                            |\u2026|24.5 usec |25.3 usec |N/A                            |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |aniso8601                       |27.7 usec  |23.7 usec  |30.3 usec  |30 usec   |291.3x                                            |\u2026|31.6 usec |33.8 usec |39.2 usec                      |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |maya                            |N/A        |36 usec    |41.3 usec  |41.8 usec |372.0x                                            |\u2026|42.4 usec |42.7 usec |N/A                            |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |python-dateutil                 |70.7 usec  |65.1 usec  |77.9 usec  |80.2 usec |744.0x                                            |\u2026|79.4 usec |83.6 usec |100 usec                       |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |arrow                           |73 usec    |62.8 usec  |74.5 usec  |73.9 usec |768.6x                                            |\u2026|75.1 usec |80 usec   |148 usec                       |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |metomi-isodatetime              |1.22 msec  |1.25 msec  |1.72 msec  |1.72 msec |12876.3x                                          |\u2026|1.76 msec |1.83 msec |N/A                            |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n    |moment                          |\u274c         |\u274c         |\u274c         |\u274c        |2305822.8x                                        |\u2026|\u274c        |\u274c        |N/A                            |\n    +--------------------------------+-----------+-----------+-----------+----------+--------------------------------------------------+-+----------+----------+-------------------------------+\n\nciso8601 takes 95 nsec, which is **2.1x faster than datetime (builtin)**, the next fastest Python 3.12 parser in this comparison.\n\n.. </include:benchmark_with_time_zone.rst>\n\n.. <include:benchmark_module_versions.rst>\n\nTested on Linux 5.15.49-linuxkit using the following modules:\n\n.. code:: python\n\n  aniso8601==9.0.1\n  arrow==1.3.0 (on Python 3.8, 3.9, 3.10, 3.11, 3.12), arrow==1.2.3 (on Python 3.7), arrow==0.17.0 (on Python 2.7)\n  backports.datetime_fromisoformat==2.0.1\n  ciso8601==2.3.0\n  iso8601==2.1.0 (on Python 3.8, 3.9, 3.10, 3.11, 3.12), iso8601==0.1.16 (on Python 2.7)\n  iso8601utils==0.1.2\n  isodate==0.6.1\n  maya==0.6.1\n  metomi-isodatetime==1!3.1.0\n  moment==0.12.1\n  pendulum==2.1.2\n  PySO8601==0.2.0\n  python-dateutil==2.8.2\n  str2date==0.905\n  udatetime==0.0.17\n  zulu==2.0.0\n\n.. </include:benchmark_module_versions.rst>\n\nFor full benchmarking details (or to run the benchmark yourself), see `benchmarking/README.rst`_\n\n.. _`benchmarking/README.rst`: https://github.com/closeio/ciso8601/blob/master/benchmarking/README.rst\n\nSupported subset of ISO 8601\n----------------------------\n\n.. |datetime.fromisoformat| replace:: ``datetime.fromisoformat``\n.. _datetime.fromisoformat: https://docs.python.org/3/library/datetime.html#datetime.datetime.fromisoformat\n\n``ciso8601`` only supports a subset of ISO 8601, but supports a superset of what is supported by Python itself (|datetime.fromisoformat|_), and supports the entirety of the `RFC 3339`_ specification.\n\nDate formats\n^^^^^^^^^^^^\n\nThe following date formats are supported:\n\n.. table::\n   :widths: auto\n\n   ============================= ============== ==================\n   Format                        Example        Supported\n   ============================= ============== ==================\n   ``YYYY-MM-DD`` (extended)     ``2018-04-29`` \u2705\n   ``YYYY-MM`` (extended)        ``2018-04``    \u2705\n   ``YYYYMMDD`` (basic)          ``20180429``   \u2705\n   ``YYYY-Www-D`` (week date)    ``2009-W01-1`` \u2705\n   ``YYYY-Www`` (week date)      ``2009-W01``   \u2705\n   ``YYYYWwwD`` (week date)      ``2009W011``   \u2705\n   ``YYYYWww`` (week date)       ``2009W01``    \u2705\n   ``YYYY-DDD`` (ordinal date)   ``1981-095``   \u2705\n   ``YYYYDDD`` (ordinal date)    ``1981095``    \u2705\n   ============================= ============== ==================\n\nUncommon ISO 8601 date formats are not supported:\n\n.. table::\n   :widths: auto\n\n   ============================= ============== ==================\n   Format                        Example        Supported\n   ============================= ============== ==================\n   ``--MM-DD`` (omitted year)    ``--04-29``    \u274c\n   ``--MMDD`` (omitted year)     ``--0429``     \u274c\n   ``\u00b1YYYYY-MM`` (>4 digit year) ``+10000-04``  \u274c\n   ``+YYYY-MM`` (leading +)      ``+2018-04``   \u274c\n   ``-YYYY-MM`` (negative -)     ``-2018-04``   \u274c\n   ============================= ============== ==================\n\nTime formats\n^^^^^^^^^^^^\n\nTimes are optional and are separated from the date by the letter ``T``.\n\nConsistent with `RFC 3339`__, ``ciso8601`` also allows either a space character, or a lower-case ``t``, to be used instead of a ``T``.\n\n__ https://stackoverflow.com/questions/522251/whats-the-difference-between-iso-8601-and-rfc-3339-date-formats\n\nThe following time formats are supported:\n\n.. table::\n   :widths: auto\n\n   =================================== =================== ==============\n   Format                              Example             Supported\n   =================================== =================== ==============\n   ``hh``                              ``11``              \u2705\n   ``hhmm``                            ``1130``            \u2705\n   ``hh:mm``                           ``11:30``           \u2705\n   ``hhmmss``                          ``113059``          \u2705\n   ``hh:mm:ss``                        ``11:30:59``        \u2705\n   ``hhmmss.ssssss``                   ``113059.123456``   \u2705\n   ``hh:mm:ss.ssssss``                 ``11:30:59.123456`` \u2705\n   ``hhmmss,ssssss``                   ``113059,123456``   \u2705\n   ``hh:mm:ss,ssssss``                 ``11:30:59,123456`` \u2705\n   Midnight (special case)             ``24:00:00``        \u2705\n   ``hh.hhh`` (fractional hours)       ``11.5``            \u274c\n   ``hh:mm.mmm`` (fractional minutes)  ``11:30.5``         \u274c\n   =================================== =================== ==============\n\n**Note:** Python datetime objects only have microsecond precision (6 digits). Any additional precision will be truncated.\n\nTime zone information\n^^^^^^^^^^^^^^^^^^^^^\n\nTime zone information may be provided in one of the following formats:\n\n.. table::\n   :widths: auto\n\n   ========== ========== ===========\n   Format     Example    Supported\n   ========== ========== ===========\n   ``Z``      ``Z``      \u2705\n   ``z``      ``z``      \u2705\n   ``\u00b1hh``    ``+11``    \u2705\n   ``\u00b1hhmm``  ``+1130``  \u2705\n   ``\u00b1hh:mm`` ``+11:30`` \u2705\n   ========== ========== ===========\n\nWhile the ISO 8601 specification allows the use of MINUS SIGN (U+2212) in the time zone separator, ``ciso8601`` only supports the use of the HYPHEN-MINUS (U+002D) character.\n\nConsistent with `RFC 3339`_, ``ciso8601`` also allows a lower-case ``z`` to be used instead of a ``Z``.\n\nStrict RFC 3339 parsing\n-----------------------\n\n``ciso8601`` parses ISO 8601 datetimes, which can be thought of as a superset of `RFC 3339`_ (`roughly`_). In cases where you might want strict RFC 3339 parsing, ``ciso8601`` offers a ``parse_rfc3339`` method, which behaves in a similar manner to ``parse_datetime``:\n\n.. _roughly: https://stackoverflow.com/questions/522251/whats-the-difference-between-iso-8601-and-rfc-3339-date-formats\n\n``parse_rfc3339(dt: String): datetime`` is a function that takes a string and either:\n\n* Returns a properly parsed Python datetime, **if and only if** the **entire** string conforms to RFC 3339.\n* Raises a ``ValueError`` with a description of the reason why the string doesn't conform to RFC 3339.\n\nIgnoring time zone information while parsing\n--------------------------------------------\n\nIt takes more time to parse timestamps with time zone information, especially if they're not in UTC. However, there are times when you don't care about time zone information, and wish to produce naive datetimes instead.\nFor example, if you are certain that your program will only parse timestamps from a single time zone, you might want to strip the time zone information and only output naive datetimes.\n\nIn these limited cases, there is a second function provided.\n``parse_datetime_as_naive`` will ignore any time zone information it finds and, as a result, is faster for timestamps containing time zone information.\n\n.. code:: python\n\n  In [1]: import ciso8601\n\n  In [2]: ciso8601.parse_datetime_as_naive('2014-12-05T12:30:45.123456-05:30')\n  Out[2]: datetime.datetime(2014, 12, 5, 12, 30, 45, 123456)\n\nNOTE: ``parse_datetime_as_naive`` is only useful in the case where your timestamps have time zone information, but you want to ignore it. This is somewhat unusual.\nIf your timestamps don't have time zone information (i.e. are naive), simply use ``parse_datetime``. It is just as fast.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Fast ISO8601 date time parser for Python written in C",
    "version": "2.3.1",
    "project_urls": {
        "Homepage": "https://github.com/closeio/ciso8601"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d12e8b5d35ddbe03f88063d76b931dea707a3045c7f6f0445be15c769dfa0e41",
                "md5": "bf31dfc76207de5e491196ce97de4d76",
                "sha256": "57db9a28e87f9e4fccba643fb70a9ba1515adc5e1325508eb2c10dd96620314c"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp310-cp310-macosx_10_9_universal2.whl",
            "has_sig": false,
            "md5_digest": "bf31dfc76207de5e491196ce97de4d76",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": null,
            "size": 25076,
            "upload_time": "2023-10-30T19:53:20",
            "upload_time_iso_8601": "2023-10-30T19:53:20.825354Z",
            "url": "https://files.pythonhosted.org/packages/d1/2e/8b5d35ddbe03f88063d76b931dea707a3045c7f6f0445be15c769dfa0e41/ciso8601-2.3.1-cp310-cp310-macosx_10_9_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ed1e68652c89bc86f2712855b67feddc10d57e63e860ec844bd5590894e8a25a",
                "md5": "da3cf896f789cad63c056206d27355ac",
                "sha256": "8c59646197ddbf84909b6c31d55f744cfeef51811e3910b61d0f58f2885823fd"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp310-cp310-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "da3cf896f789cad63c056206d27355ac",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": null,
            "size": 16020,
            "upload_time": "2023-10-30T19:53:23",
            "upload_time_iso_8601": "2023-10-30T19:53:23.501527Z",
            "url": "https://files.pythonhosted.org/packages/ed/1e/68652c89bc86f2712855b67feddc10d57e63e860ec844bd5590894e8a25a/ciso8601-2.3.1-cp310-cp310-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "66baf6f3d42d7521eefd18a3ed3cc03d765445e499b94da8ed93b699afe4c8f9",
                "md5": "63e603274f556d99af7bb6752aafb7ab",
                "sha256": "6a25da209193134842cd573464a5323f46fcc3ed781b633f15a34793ba7e1064"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp310-cp310-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "63e603274f556d99af7bb6752aafb7ab",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": null,
            "size": 16066,
            "upload_time": "2023-10-30T19:53:24",
            "upload_time_iso_8601": "2023-10-30T19:53:24.829083Z",
            "url": "https://files.pythonhosted.org/packages/66/ba/f6f3d42d7521eefd18a3ed3cc03d765445e499b94da8ed93b699afe4c8f9/ciso8601-2.3.1-cp310-cp310-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c9429756084f3ceea1a3635e4d3fdea0f94886ad126167fe962bafbe834b15ff",
                "md5": "eec0ced492cf5fdf6ac82d2426de2ed2",
                "sha256": "f3ae83f4e60fc7e260a4188e4ec4ac1bdd40bdb382eeda92fc266c5aa2f0a1ee"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "eec0ced492cf5fdf6ac82d2426de2ed2",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": null,
            "size": 38773,
            "upload_time": "2023-10-30T19:53:26",
            "upload_time_iso_8601": "2023-10-30T19:53:26.131492Z",
            "url": "https://files.pythonhosted.org/packages/c9/42/9756084f3ceea1a3635e4d3fdea0f94886ad126167fe962bafbe834b15ff/ciso8601-2.3.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5e189372721282df9ccdc105efc811ddab2074994bae8dccaaf7f4fd6720e761",
                "md5": "ee08dd06c3575002a8f5a763f81288a5",
                "sha256": "2c1ef17d1ea52a39b2dce6535583631ae4bfb65c76f0ee8c99413a6861a46c9e"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp310-cp310-musllinux_1_1_i686.whl",
            "has_sig": false,
            "md5_digest": "ee08dd06c3575002a8f5a763f81288a5",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": null,
            "size": 46391,
            "upload_time": "2023-10-30T19:53:27",
            "upload_time_iso_8601": "2023-10-30T19:53:27.274023Z",
            "url": "https://files.pythonhosted.org/packages/5e/18/9372721282df9ccdc105efc811ddab2074994bae8dccaaf7f4fd6720e761/ciso8601-2.3.1-cp310-cp310-musllinux_1_1_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "275bccd7cf4631540bba4fe1313b29fe7f4eb0c132d319e3095f3fe6615396ea",
                "md5": "ddec0bf357e3eee440157fe5c73b0eac",
                "sha256": "3771049ba29bd1077588c0a24be1d53f7493e7cc686b2caa92f7cae129636a0e"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp310-cp310-musllinux_1_1_x86_64.whl",
            "has_sig": false,
            "md5_digest": "ddec0bf357e3eee440157fe5c73b0eac",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": null,
            "size": 47333,
            "upload_time": "2023-10-30T19:53:28",
            "upload_time_iso_8601": "2023-10-30T19:53:28.715902Z",
            "url": "https://files.pythonhosted.org/packages/27/5b/ccd7cf4631540bba4fe1313b29fe7f4eb0c132d319e3095f3fe6615396ea/ciso8601-2.3.1-cp310-cp310-musllinux_1_1_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "919a5f3842bd57dcbfa09c251f9ba3bf8a84706aaaeadf8634b699cdb5d10b53",
                "md5": "391f10a51835c776504ab29a1c8fa562",
                "sha256": "55381365366dacb57207cec610d26c9a6c0d237cb65a0cf67a2baaa5299f2366"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp310-cp310-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "391f10a51835c776504ab29a1c8fa562",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": null,
            "size": 17158,
            "upload_time": "2023-10-30T19:53:30",
            "upload_time_iso_8601": "2023-10-30T19:53:30.006822Z",
            "url": "https://files.pythonhosted.org/packages/91/9a/5f3842bd57dcbfa09c251f9ba3bf8a84706aaaeadf8634b699cdb5d10b53/ciso8601-2.3.1-cp310-cp310-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b1b7b03313a9ff86a5bec68f2ceece41abd0834fd92c91c7ba4b9a95ea032f35",
                "md5": "ea7360402f1bc94b04aabe5faa9740d9",
                "sha256": "9f25647803c9a5aaaed130c53bbec7ea06a4f95ba5c7016f59e444b4ef7ac39e"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp311-cp311-macosx_10_9_universal2.whl",
            "has_sig": false,
            "md5_digest": "ea7360402f1bc94b04aabe5faa9740d9",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": null,
            "size": 25077,
            "upload_time": "2023-10-30T19:53:31",
            "upload_time_iso_8601": "2023-10-30T19:53:31.503286Z",
            "url": "https://files.pythonhosted.org/packages/b1/b7/b03313a9ff86a5bec68f2ceece41abd0834fd92c91c7ba4b9a95ea032f35/ciso8601-2.3.1-cp311-cp311-macosx_10_9_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "40368260b1b1b63051f90facb659913c5852cd95a17cfd3e7dc243cef4e190a0",
                "md5": "e8f0d5e710e94fc1db299a5511a5be4e",
                "sha256": "473288cd63efe6a2cf3f4b5f90394e53095358ccb13d6128f87a2da85d0f389b"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp311-cp311-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "e8f0d5e710e94fc1db299a5511a5be4e",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": null,
            "size": 16016,
            "upload_time": "2023-10-30T19:53:33",
            "upload_time_iso_8601": "2023-10-30T19:53:33.032431Z",
            "url": "https://files.pythonhosted.org/packages/40/36/8260b1b1b63051f90facb659913c5852cd95a17cfd3e7dc243cef4e190a0/ciso8601-2.3.1-cp311-cp311-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "18db237d57669edb78b8262bf78d9cc9638355ec96a49216d12238babfa46861",
                "md5": "ab76986bab3503bc7de6e0a41999563f",
                "sha256": "121d27c55f4455eaa27ba3bd602beca915df9a352f235e935636a4660321070e"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp311-cp311-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "ab76986bab3503bc7de6e0a41999563f",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": null,
            "size": 16073,
            "upload_time": "2023-10-30T19:53:34",
            "upload_time_iso_8601": "2023-10-30T19:53:34.629811Z",
            "url": "https://files.pythonhosted.org/packages/18/db/237d57669edb78b8262bf78d9cc9638355ec96a49216d12238babfa46861/ciso8601-2.3.1-cp311-cp311-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ae25957d686b0b3640f7a80073f396817dc149e03e3e72665f472deefce04719",
                "md5": "474b8875a29076a09836c7097c90d2e9",
                "sha256": "ef44cb4dc83f37019a356c7a72692cbe17072456f4879ca6bc0339f67eee5d00"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "474b8875a29076a09836c7097c90d2e9",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": null,
            "size": 39062,
            "upload_time": "2023-10-30T19:53:35",
            "upload_time_iso_8601": "2023-10-30T19:53:35.652170Z",
            "url": "https://files.pythonhosted.org/packages/ae/25/957d686b0b3640f7a80073f396817dc149e03e3e72665f472deefce04719/ciso8601-2.3.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "571a3de6285bb4b743edc2af3e19253d72076a2911e985b89fe67a730a06d9ea",
                "md5": "1a1c961c250a6606f6774260a60641c5",
                "sha256": "364702e338212b6c1a8643d9399ada21560cf132f363853473560625cb4207f1"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp311-cp311-musllinux_1_1_i686.whl",
            "has_sig": false,
            "md5_digest": "1a1c961c250a6606f6774260a60641c5",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": null,
            "size": 48730,
            "upload_time": "2023-10-30T19:53:36",
            "upload_time_iso_8601": "2023-10-30T19:53:36.976542Z",
            "url": "https://files.pythonhosted.org/packages/57/1a/3de6285bb4b743edc2af3e19253d72076a2911e985b89fe67a730a06d9ea/ciso8601-2.3.1-cp311-cp311-musllinux_1_1_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7b52764356d60dcd743d2352a0c24d593ce6df330a7012f8c2ade00e580031df",
                "md5": "a991555c5569d9fc578872421197307d",
                "sha256": "8acb45545e6a654310c6ef788aacb2d73686646c414ceacdd9f5f78a83165af5"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp311-cp311-musllinux_1_1_x86_64.whl",
            "has_sig": false,
            "md5_digest": "a991555c5569d9fc578872421197307d",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": null,
            "size": 49879,
            "upload_time": "2023-10-30T19:53:38",
            "upload_time_iso_8601": "2023-10-30T19:53:38.965653Z",
            "url": "https://files.pythonhosted.org/packages/7b/52/764356d60dcd743d2352a0c24d593ce6df330a7012f8c2ade00e580031df/ciso8601-2.3.1-cp311-cp311-musllinux_1_1_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5c2415ebc33837b116c6c48cf1257e24a3d5c4a176dbb8b6c118315993ea4698",
                "md5": "c416467f14e5b70a28611b3f2ebcf1f4",
                "sha256": "99addd8b113f85fac549167073f317a318cd2b5841552598ceb97b97c5708a38"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp311-cp311-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "c416467f14e5b70a28611b3f2ebcf1f4",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": null,
            "size": 17148,
            "upload_time": "2023-10-30T19:53:40",
            "upload_time_iso_8601": "2023-10-30T19:53:40.588917Z",
            "url": "https://files.pythonhosted.org/packages/5c/24/15ebc33837b116c6c48cf1257e24a3d5c4a176dbb8b6c118315993ea4698/ciso8601-2.3.1-cp311-cp311-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "853df6496a260ba6e58135fb3dd1108799f6dd9cadf634372e020bfbf0d27fea",
                "md5": "2fe189244ba167047a1671675d2bc583",
                "sha256": "f39bb5936debf21c52e5d52b89f26857c303da80c43a72883946096a6ef5e561"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp312-cp312-macosx_10_9_universal2.whl",
            "has_sig": false,
            "md5_digest": "2fe189244ba167047a1671675d2bc583",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": null,
            "size": 24211,
            "upload_time": "2023-10-30T19:53:42",
            "upload_time_iso_8601": "2023-10-30T19:53:42.011693Z",
            "url": "https://files.pythonhosted.org/packages/85/3d/f6496a260ba6e58135fb3dd1108799f6dd9cadf634372e020bfbf0d27fea/ciso8601-2.3.1-cp312-cp312-macosx_10_9_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c4a924ffa848a5878a50009d6177826c36b60e2e8807e4d54ee94817e790897b",
                "md5": "4a92b2d6e1401bcdb31ff4313afa58c6",
                "sha256": "21cf83ca945bb26ecd95364ae2c9ed0276378e5fe35ce1b64d4c6d5b33038ea3"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp312-cp312-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "4a92b2d6e1401bcdb31ff4313afa58c6",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": null,
            "size": 15591,
            "upload_time": "2023-10-30T19:53:43",
            "upload_time_iso_8601": "2023-10-30T19:53:43.317194Z",
            "url": "https://files.pythonhosted.org/packages/c4/a9/24ffa848a5878a50009d6177826c36b60e2e8807e4d54ee94817e790897b/ciso8601-2.3.1-cp312-cp312-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ea7477fd6e67a2a3489a1ac449570142e2f4137289be25027e235d4688470d56",
                "md5": "7aebe8a58f17e3188cbc97d5bb52d124",
                "sha256": "013410263cba46748d2de29e9894341ae41223356cde7970478c32bd0984d10c"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp312-cp312-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "7aebe8a58f17e3188cbc97d5bb52d124",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": null,
            "size": 15643,
            "upload_time": "2023-10-30T19:53:44",
            "upload_time_iso_8601": "2023-10-30T19:53:44.806491Z",
            "url": "https://files.pythonhosted.org/packages/ea/74/77fd6e67a2a3489a1ac449570142e2f4137289be25027e235d4688470d56/ciso8601-2.3.1-cp312-cp312-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5bbdfef5524974e3ba376e16df35e4197152edffdf7ac9d5d99bc173a9fcf256",
                "md5": "254f85642b64ee9b8a9918585d4ce0f8",
                "sha256": "b26935687ef1837b56997d8c61f1d789e698be58b261410e629eda9c89812141"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "254f85642b64ee9b8a9918585d4ce0f8",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": null,
            "size": 39805,
            "upload_time": "2023-10-30T19:53:46",
            "upload_time_iso_8601": "2023-10-30T19:53:46.036770Z",
            "url": "https://files.pythonhosted.org/packages/5b/bd/fef5524974e3ba376e16df35e4197152edffdf7ac9d5d99bc173a9fcf256/ciso8601-2.3.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "501cd1cb5b2d2173abfc4d5a068981acddff763cce318e896ec87c140412c72d",
                "md5": "c2881cfcee4f12d83baa5605fe2e1925",
                "sha256": "0d980a2a88030d4d8b2434623c250866a75b4979d289eba69bec445c51ace99f"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp312-cp312-musllinux_1_1_i686.whl",
            "has_sig": false,
            "md5_digest": "c2881cfcee4f12d83baa5605fe2e1925",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": null,
            "size": 48335,
            "upload_time": "2023-10-30T19:53:47",
            "upload_time_iso_8601": "2023-10-30T19:53:47.275446Z",
            "url": "https://files.pythonhosted.org/packages/50/1c/d1cb5b2d2173abfc4d5a068981acddff763cce318e896ec87c140412c72d/ciso8601-2.3.1-cp312-cp312-musllinux_1_1_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "76ef5ef06ccb6f6c023573634119f93df237687e3f4263e2f307b51a7208d103",
                "md5": "5d900aa4698d1128bc6a4d329952f6ee",
                "sha256": "87721de54e008fb1c4c3978553b05a9c417aa25b76ddf5702d6f7e8d9b109288"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp312-cp312-musllinux_1_1_x86_64.whl",
            "has_sig": false,
            "md5_digest": "5d900aa4698d1128bc6a4d329952f6ee",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": null,
            "size": 49449,
            "upload_time": "2023-10-30T19:53:48",
            "upload_time_iso_8601": "2023-10-30T19:53:48.646822Z",
            "url": "https://files.pythonhosted.org/packages/76/ef/5ef06ccb6f6c023573634119f93df237687e3f4263e2f307b51a7208d103/ciso8601-2.3.1-cp312-cp312-musllinux_1_1_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e645f981bbd51f1c9fa3d730c3fbcb74b1f8928463e6ea8283257f6b164847e6",
                "md5": "8fff723ddaf5783aff924c6c8baefd7b",
                "sha256": "9f107a4c051e7c0416824279264d94f4ed3da0fbd82bd96ec3c3293426826de4"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp312-cp312-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "8fff723ddaf5783aff924c6c8baefd7b",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": null,
            "size": 17084,
            "upload_time": "2023-10-30T19:53:49",
            "upload_time_iso_8601": "2023-10-30T19:53:49.745830Z",
            "url": "https://files.pythonhosted.org/packages/e6/45/f981bbd51f1c9fa3d730c3fbcb74b1f8928463e6ea8283257f6b164847e6/ciso8601-2.3.1-cp312-cp312-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f3fb175cf085a4de548c10b6ea1dba725ca7b7db6eed65e288a2bafae4b55772",
                "md5": "da69f82b17984ab73dc4fa9c71948e64",
                "sha256": "02ecbd7c8336c4e1c6bb725b898e29414ee92bdc0be6c72fb07036836b1ac867"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp36-cp36m-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "da69f82b17984ab73dc4fa9c71948e64",
            "packagetype": "bdist_wheel",
            "python_version": "cp36",
            "requires_python": null,
            "size": 15492,
            "upload_time": "2023-10-30T19:53:51",
            "upload_time_iso_8601": "2023-10-30T19:53:51.183927Z",
            "url": "https://files.pythonhosted.org/packages/f3/fb/175cf085a4de548c10b6ea1dba725ca7b7db6eed65e288a2bafae4b55772/ciso8601-2.3.1-cp36-cp36m-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9b93a66c1eb77ae3abf3090c27014f47950159619940378de2986d863467d125",
                "md5": "894c1a802a5738ba275bf122b36cb767",
                "sha256": "36525b1f380f4601533f4631c69911e44efb9cb50beab1da3248b0daa32bced4"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "894c1a802a5738ba275bf122b36cb767",
            "packagetype": "bdist_wheel",
            "python_version": "cp36",
            "requires_python": null,
            "size": 38712,
            "upload_time": "2023-10-30T19:53:52",
            "upload_time_iso_8601": "2023-10-30T19:53:52.373422Z",
            "url": "https://files.pythonhosted.org/packages/9b/93/a66c1eb77ae3abf3090c27014f47950159619940378de2986d863467d125/ciso8601-2.3.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e0c22c69b191a6c3f2bb71cd3c55ec759e3df8b0b1146c8d84268c17bf75d09e",
                "md5": "d69f3ba3900b3c49d6d25026420d3cd5",
                "sha256": "874d20c6339e9096baaadfd1b9610bb8d5b373a0f2858cc06de8142b98d2129c"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp36-cp36m-musllinux_1_1_i686.whl",
            "has_sig": false,
            "md5_digest": "d69f3ba3900b3c49d6d25026420d3cd5",
            "packagetype": "bdist_wheel",
            "python_version": "cp36",
            "requires_python": null,
            "size": 46305,
            "upload_time": "2023-10-30T19:53:53",
            "upload_time_iso_8601": "2023-10-30T19:53:53.607749Z",
            "url": "https://files.pythonhosted.org/packages/e0/c2/2c69b191a6c3f2bb71cd3c55ec759e3df8b0b1146c8d84268c17bf75d09e/ciso8601-2.3.1-cp36-cp36m-musllinux_1_1_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d0019fd1cedbae8fe0cb8d075c7566bc46182a58b6c5ce3b4edff5d2f2ad45fc",
                "md5": "1fe05a546e09e949ac2ae251a29e3b62",
                "sha256": "46a3663c2cf838f0149e1cdb8e4bdc95716e03cf2d5f803a6eb755d825896ebe"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp36-cp36m-musllinux_1_1_x86_64.whl",
            "has_sig": false,
            "md5_digest": "1fe05a546e09e949ac2ae251a29e3b62",
            "packagetype": "bdist_wheel",
            "python_version": "cp36",
            "requires_python": null,
            "size": 47457,
            "upload_time": "2023-10-30T19:53:54",
            "upload_time_iso_8601": "2023-10-30T19:53:54.987340Z",
            "url": "https://files.pythonhosted.org/packages/d0/01/9fd1cedbae8fe0cb8d075c7566bc46182a58b6c5ce3b4edff5d2f2ad45fc/ciso8601-2.3.1-cp36-cp36m-musllinux_1_1_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0aa25f063c82046666663d22c172c690efb1fdb95e85d8974a4967b1461ede7d",
                "md5": "06c65c22fb4c714be4cbea311c113eae",
                "sha256": "e8e76825f80ce313d75bbbef1d3b8bd9e0ce31dbc157d1981e9593922c9983e7"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp36-cp36m-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "06c65c22fb4c714be4cbea311c113eae",
            "packagetype": "bdist_wheel",
            "python_version": "cp36",
            "requires_python": null,
            "size": 17985,
            "upload_time": "2023-10-30T19:53:56",
            "upload_time_iso_8601": "2023-10-30T19:53:56.387607Z",
            "url": "https://files.pythonhosted.org/packages/0a/a2/5f063c82046666663d22c172c690efb1fdb95e85d8974a4967b1461ede7d/ciso8601-2.3.1-cp36-cp36m-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e9eed2d80128f3e61466472ebec66482caad9f457eba2c2fa21bcacbd46f5bd8",
                "md5": "2aeb1f9e1039b20cdda48ed3c6effc90",
                "sha256": "6850889813f3135e0aa18f0aaec64249dd81d36a1b9bce60bb45182930c86663"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp37-cp37m-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "2aeb1f9e1039b20cdda48ed3c6effc90",
            "packagetype": "bdist_wheel",
            "python_version": "cp37",
            "requires_python": null,
            "size": 15505,
            "upload_time": "2023-10-30T19:53:57",
            "upload_time_iso_8601": "2023-10-30T19:53:57.469122Z",
            "url": "https://files.pythonhosted.org/packages/e9/ee/d2d80128f3e61466472ebec66482caad9f457eba2c2fa21bcacbd46f5bd8/ciso8601-2.3.1-cp37-cp37m-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "66fbf24c02697d412eff1e4f1dd1cb7bc6bd5df856e8cb5c61a79bd8d528f9ed",
                "md5": "7408938c3d235970191ee85dd68b37ea",
                "sha256": "2c690ac24ec3407f68cdfd5e032c6cb18126ef33d6c4b3db0669b9cbb8c96bd4"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "7408938c3d235970191ee85dd68b37ea",
            "packagetype": "bdist_wheel",
            "python_version": "cp37",
            "requires_python": null,
            "size": 38693,
            "upload_time": "2023-10-30T19:53:59",
            "upload_time_iso_8601": "2023-10-30T19:53:59.062167Z",
            "url": "https://files.pythonhosted.org/packages/66/fb/f24c02697d412eff1e4f1dd1cb7bc6bd5df856e8cb5c61a79bd8d528f9ed/ciso8601-2.3.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "583365197b6c3abadde4bae806e27718134d0e5a6fdd79bb54885d233dd89074",
                "md5": "b64fbcccba6782dd05cde64947d68b03",
                "sha256": "024c52d5d0670f15ca3dc53eff7345b6eaee22fba929675f6a408f9d1e159d98"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp37-cp37m-musllinux_1_1_i686.whl",
            "has_sig": false,
            "md5_digest": "b64fbcccba6782dd05cde64947d68b03",
            "packagetype": "bdist_wheel",
            "python_version": "cp37",
            "requires_python": null,
            "size": 46545,
            "upload_time": "2023-10-30T19:54:00",
            "upload_time_iso_8601": "2023-10-30T19:54:00.880503Z",
            "url": "https://files.pythonhosted.org/packages/58/33/65197b6c3abadde4bae806e27718134d0e5a6fdd79bb54885d233dd89074/ciso8601-2.3.1-cp37-cp37m-musllinux_1_1_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ebb17206a8dfd4981caebc79bc55a4f0edc56e0b3dd25307a6c78c4dd1d00904",
                "md5": "c953a1410d389e0ff25de3bded429291",
                "sha256": "e7ae2c3442d042de5330672d0d28486ed92f9d7c6dc010943aa618fd361d4638"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp37-cp37m-musllinux_1_1_x86_64.whl",
            "has_sig": false,
            "md5_digest": "c953a1410d389e0ff25de3bded429291",
            "packagetype": "bdist_wheel",
            "python_version": "cp37",
            "requires_python": null,
            "size": 47222,
            "upload_time": "2023-10-30T19:54:02",
            "upload_time_iso_8601": "2023-10-30T19:54:02.553135Z",
            "url": "https://files.pythonhosted.org/packages/eb/b1/7206a8dfd4981caebc79bc55a4f0edc56e0b3dd25307a6c78c4dd1d00904/ciso8601-2.3.1-cp37-cp37m-musllinux_1_1_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "02b0a99f343b143543be7af0ea19efb41b0494a3b4ca60a3bf1a974485acad51",
                "md5": "9e297cf9e6e838565c3434a7687f8009",
                "sha256": "22128f0def36fa3c4cf0c482a216e8b8ad722def08bc11c07438eff82bdcd02a"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp37-cp37m-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "9e297cf9e6e838565c3434a7687f8009",
            "packagetype": "bdist_wheel",
            "python_version": "cp37",
            "requires_python": null,
            "size": 17161,
            "upload_time": "2023-10-30T19:54:03",
            "upload_time_iso_8601": "2023-10-30T19:54:03.717118Z",
            "url": "https://files.pythonhosted.org/packages/02/b0/a99f343b143543be7af0ea19efb41b0494a3b4ca60a3bf1a974485acad51/ciso8601-2.3.1-cp37-cp37m-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "64183544594777a553d5e2b69739d215ccc12620973ff54ba67e4cb1ab60f6a5",
                "md5": "7d94eeb7246c620e923f2a121c18563c",
                "sha256": "025859ec286a994aa3f2120c0f27d053b719cabc975398338374f2cc1f961125"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp38-cp38-macosx_10_9_universal2.whl",
            "has_sig": false,
            "md5_digest": "7d94eeb7246c620e923f2a121c18563c",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": null,
            "size": 25071,
            "upload_time": "2023-10-30T19:54:04",
            "upload_time_iso_8601": "2023-10-30T19:54:04.906947Z",
            "url": "https://files.pythonhosted.org/packages/64/18/3544594777a553d5e2b69739d215ccc12620973ff54ba67e4cb1ab60f6a5/ciso8601-2.3.1-cp38-cp38-macosx_10_9_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0712975e4b102a95aa7a940793cd87439a19b3b4cf4c8b73cda1145bd72ec78e",
                "md5": "6a0daf19c1355f13fda28bd8440409f1",
                "sha256": "2a64ff58904d4418d60fa9619014ae820ae21f7aef58da46df78a4c647f951ec"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp38-cp38-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "6a0daf19c1355f13fda28bd8440409f1",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": null,
            "size": 16005,
            "upload_time": "2023-10-30T19:54:06",
            "upload_time_iso_8601": "2023-10-30T19:54:06.285739Z",
            "url": "https://files.pythonhosted.org/packages/07/12/975e4b102a95aa7a940793cd87439a19b3b4cf4c8b73cda1145bd72ec78e/ciso8601-2.3.1-cp38-cp38-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "09bd0cc7e7dbe08ad9c4913ece2abd975078fd6e91f2b78225d9dc02f1fb7793",
                "md5": "f792a301545a4ffb206428668b6edfab",
                "sha256": "d1f85c0b7fa742bbfd18177137ccbaa3f867dd06157f91595075bb959a733048"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp38-cp38-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "f792a301545a4ffb206428668b6edfab",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": null,
            "size": 16068,
            "upload_time": "2023-10-30T19:54:07",
            "upload_time_iso_8601": "2023-10-30T19:54:07.661160Z",
            "url": "https://files.pythonhosted.org/packages/09/bd/0cc7e7dbe08ad9c4913ece2abd975078fd6e91f2b78225d9dc02f1fb7793/ciso8601-2.3.1-cp38-cp38-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "067b674cbdc6fba47e2bb56d3ad5307d8fa5202ab853c8f5c69c42effa0e4436",
                "md5": "7d504899a700fcbf909e2e3b2405808f",
                "sha256": "e4ac59453664781dfddebee51f9a36e41819993823fdb09ddc0ce0e4bd3ff0c3"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "7d504899a700fcbf909e2e3b2405808f",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": null,
            "size": 39244,
            "upload_time": "2023-10-30T19:54:08",
            "upload_time_iso_8601": "2023-10-30T19:54:08.911672Z",
            "url": "https://files.pythonhosted.org/packages/06/7b/674cbdc6fba47e2bb56d3ad5307d8fa5202ab853c8f5c69c42effa0e4436/ciso8601-2.3.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4b37bdf84104ff6810116e9802be07212edfaa877a197433f1caec200b7aaa93",
                "md5": "89f1096ecfad82910192b5bce4b581a8",
                "sha256": "eaecca7e0c3ef9e8f5e963e212b083684e849f9a9bb25834d3042363223a73cd"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp38-cp38-musllinux_1_1_i686.whl",
            "has_sig": false,
            "md5_digest": "89f1096ecfad82910192b5bce4b581a8",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": null,
            "size": 45586,
            "upload_time": "2023-10-30T19:54:10",
            "upload_time_iso_8601": "2023-10-30T19:54:10.617848Z",
            "url": "https://files.pythonhosted.org/packages/4b/37/bdf84104ff6810116e9802be07212edfaa877a197433f1caec200b7aaa93/ciso8601-2.3.1-cp38-cp38-musllinux_1_1_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fc41c5689bb0b1824f180f80cba5a4bd793d3d0e17b7802f7576fa1b7fd3efe9",
                "md5": "dca04024144423f6303405a7c5cb29af",
                "sha256": "ad8f417c45eea973a694599b96f40d841215bfee352cb9963383e8d66b309981"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp38-cp38-musllinux_1_1_x86_64.whl",
            "has_sig": false,
            "md5_digest": "dca04024144423f6303405a7c5cb29af",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": null,
            "size": 46338,
            "upload_time": "2023-10-30T19:54:12",
            "upload_time_iso_8601": "2023-10-30T19:54:12.088577Z",
            "url": "https://files.pythonhosted.org/packages/fc/41/c5689bb0b1824f180f80cba5a4bd793d3d0e17b7802f7576fa1b7fd3efe9/ciso8601-2.3.1-cp38-cp38-musllinux_1_1_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f7ae953b1f49cf0e13e3c4bdec33ed37aef267783d6d85fdbfaa611fa6538233",
                "md5": "bab1c31ffea89e2da04aa35bc2f4888c",
                "sha256": "b869396e9756a7c0696d8eb69ce1d8980bea5e25c86e5996b10d78c900a4362c"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp38-cp38-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "bab1c31ffea89e2da04aa35bc2f4888c",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": null,
            "size": 17162,
            "upload_time": "2023-10-30T19:54:13",
            "upload_time_iso_8601": "2023-10-30T19:54:13.412710Z",
            "url": "https://files.pythonhosted.org/packages/f7/ae/953b1f49cf0e13e3c4bdec33ed37aef267783d6d85fdbfaa611fa6538233/ciso8601-2.3.1-cp38-cp38-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ef54863616c6f435dee386d8533d85ac59efa301324d7745bbcdd891512a67c7",
                "md5": "0789c40dbd51ce8c770032b35212029e",
                "sha256": "7eb7b5ef8714d3d1fe9f3256b7a679ad783da899a0b7503a5ace78186735f840"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp39-cp39-macosx_10_9_universal2.whl",
            "has_sig": false,
            "md5_digest": "0789c40dbd51ce8c770032b35212029e",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": null,
            "size": 25076,
            "upload_time": "2023-10-30T19:54:14",
            "upload_time_iso_8601": "2023-10-30T19:54:14.734900Z",
            "url": "https://files.pythonhosted.org/packages/ef/54/863616c6f435dee386d8533d85ac59efa301324d7745bbcdd891512a67c7/ciso8601-2.3.1-cp39-cp39-macosx_10_9_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "15ac8dfe940808219f8ec3dcfa286cdcbcb704e7ccd9b02f64bc0a31ea4b8c8a",
                "md5": "d1582324996b8bec6459d845bac2827a",
                "sha256": "02828107880848ff497971ebc98e6dc851ad7af8ec14a58089e0e11f3111cad6"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp39-cp39-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "d1582324996b8bec6459d845bac2827a",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": null,
            "size": 16012,
            "upload_time": "2023-10-30T19:54:15",
            "upload_time_iso_8601": "2023-10-30T19:54:15.872189Z",
            "url": "https://files.pythonhosted.org/packages/15/ac/8dfe940808219f8ec3dcfa286cdcbcb704e7ccd9b02f64bc0a31ea4b8c8a/ciso8601-2.3.1-cp39-cp39-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "02c164433e0e6c615d8c9e5949c4082d364890f2632064b187d4b33b1463e789",
                "md5": "781acc6e0f0d31a9e9ce6248f955e992",
                "sha256": "566b4a8b2f9717e54ffcdd732a7c8051a91da30a60a4f1dafb62e303a1dbac69"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp39-cp39-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "781acc6e0f0d31a9e9ce6248f955e992",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": null,
            "size": 16068,
            "upload_time": "2023-10-30T19:54:17",
            "upload_time_iso_8601": "2023-10-30T19:54:17.159338Z",
            "url": "https://files.pythonhosted.org/packages/02/c1/64433e0e6c615d8c9e5949c4082d364890f2632064b187d4b33b1463e789/ciso8601-2.3.1-cp39-cp39-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "12b1ddc338b59f1658d04fc8e61c91562d05b7003c05b1e300506745e9604fed",
                "md5": "956b44c4ed332e1cbc8e70e794995d55",
                "sha256": "58a749d63f28c2eda71416c9d6014113b0748abf5fd14c502b01bd515502fedf"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "956b44c4ed332e1cbc8e70e794995d55",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": null,
            "size": 38349,
            "upload_time": "2023-10-30T19:54:18",
            "upload_time_iso_8601": "2023-10-30T19:54:18.303526Z",
            "url": "https://files.pythonhosted.org/packages/12/b1/ddc338b59f1658d04fc8e61c91562d05b7003c05b1e300506745e9604fed/ciso8601-2.3.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "eb3f69e3ef7fe521edcdc5d5fd796c7425c607db86b060968127c3ce522cb094",
                "md5": "7d22baaf1d7a1d7d9a80c8ba666ce061",
                "sha256": "cb135de0e3b8feb7e74a4f7a234e8c8545957fe8d26316a1a549553f425c629d"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp39-cp39-musllinux_1_1_i686.whl",
            "has_sig": false,
            "md5_digest": "7d22baaf1d7a1d7d9a80c8ba666ce061",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": null,
            "size": 45902,
            "upload_time": "2023-10-30T19:54:19",
            "upload_time_iso_8601": "2023-10-30T19:54:19.602745Z",
            "url": "https://files.pythonhosted.org/packages/eb/3f/69e3ef7fe521edcdc5d5fd796c7425c607db86b060968127c3ce522cb094/ciso8601-2.3.1-cp39-cp39-musllinux_1_1_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cab7b24f11ee31697a251ef2d1fcd249e6ce3b23e7bac272f9a2b98872d76c49",
                "md5": "36f5290e3f7dff4090964eba9992e1f7",
                "sha256": "695583810836a42945084b33621b22b0309701c6916689f6a3588fa44c5bc413"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp39-cp39-musllinux_1_1_x86_64.whl",
            "has_sig": false,
            "md5_digest": "36f5290e3f7dff4090964eba9992e1f7",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": null,
            "size": 46784,
            "upload_time": "2023-10-30T19:54:21",
            "upload_time_iso_8601": "2023-10-30T19:54:21.155819Z",
            "url": "https://files.pythonhosted.org/packages/ca/b7/b24f11ee31697a251ef2d1fcd249e6ce3b23e7bac272f9a2b98872d76c49/ciso8601-2.3.1-cp39-cp39-musllinux_1_1_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c438a11b23e2350162bbd26f98e001965d3f1bd5079667e1d6e99c1ef62ed6a3",
                "md5": "a223c642e370c73eadecb0bc039b702e",
                "sha256": "21204d98496cf5c0511dc21533be55c2a2d34b8c65603946a116812ffbae3b2d"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-cp39-cp39-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "a223c642e370c73eadecb0bc039b702e",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": null,
            "size": 17169,
            "upload_time": "2023-10-30T19:54:22",
            "upload_time_iso_8601": "2023-10-30T19:54:22.586453Z",
            "url": "https://files.pythonhosted.org/packages/c4/38/a11b23e2350162bbd26f98e001965d3f1bd5079667e1d6e99c1ef62ed6a3/ciso8601-2.3.1-cp39-cp39-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "861d3ca6dc3602be7592653aec9c8df3dbf3977171527c38b9696d069eef9b87",
                "md5": "d0f4e9760fa366f790bac5b585015310",
                "sha256": "8c29ea2b03dee2dc0a5d3e4a0b7d7768c597781e9fa451fe1025600f7cb55a89"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-pp310-pypy310_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "d0f4e9760fa366f790bac5b585015310",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": null,
            "size": 16540,
            "upload_time": "2023-10-30T19:54:23",
            "upload_time_iso_8601": "2023-10-30T19:54:23.656606Z",
            "url": "https://files.pythonhosted.org/packages/86/1d/3ca6dc3602be7592653aec9c8df3dbf3977171527c38b9696d069eef9b87/ciso8601-2.3.1-pp310-pypy310_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6eac68e4188ea6588b14befaee1cc54b7ebbe898e7ab6e11af6d9aa76c5cc3f3",
                "md5": "acca21711070eebaa319a627375c97af",
                "sha256": "7533256af90724b8b7a707dcd1be4b67989447595c8e1e1c28399d4fd51dac50"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-pp310-pypy310_pp73-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "acca21711070eebaa319a627375c97af",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": null,
            "size": 17189,
            "upload_time": "2023-10-30T19:54:25",
            "upload_time_iso_8601": "2023-10-30T19:54:25.020676Z",
            "url": "https://files.pythonhosted.org/packages/6e/ac/68e4188ea6588b14befaee1cc54b7ebbe898e7ab6e11af6d9aa76c5cc3f3/ciso8601-2.3.1-pp310-pypy310_pp73-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "74dd95b44f8c9c3c5f6de3bf41eb36ff95a85ba07398f54ca0e36feaf7ac98ff",
                "md5": "521589d96b93760acae448e10308df69",
                "sha256": "d4bc9d577c0d1e57532513fc2899f5231727e28981a426767f7fa13dacb18c06"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "521589d96b93760acae448e10308df69",
            "packagetype": "bdist_wheel",
            "python_version": "pp37",
            "requires_python": null,
            "size": 16665,
            "upload_time": "2023-10-30T19:54:26",
            "upload_time_iso_8601": "2023-10-30T19:54:26.829986Z",
            "url": "https://files.pythonhosted.org/packages/74/dd/95b44f8c9c3c5f6de3bf41eb36ff95a85ba07398f54ca0e36feaf7ac98ff/ciso8601-2.3.1-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4e24144243acd0a32e56dfdcd79bd7ed8c44dfc3db66a21e760fddd666148d14",
                "md5": "c03126b8d89c18ba6f1f834a609dc5a6",
                "sha256": "4e30501eed43eea7ef64f032c81cd1d8b2020035cbdcefad40db72e2f3bc97ff"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-pp37-pypy37_pp73-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "c03126b8d89c18ba6f1f834a609dc5a6",
            "packagetype": "bdist_wheel",
            "python_version": "pp37",
            "requires_python": null,
            "size": 17187,
            "upload_time": "2023-10-30T19:54:28",
            "upload_time_iso_8601": "2023-10-30T19:54:28.045678Z",
            "url": "https://files.pythonhosted.org/packages/4e/24/144243acd0a32e56dfdcd79bd7ed8c44dfc3db66a21e760fddd666148d14/ciso8601-2.3.1-pp37-pypy37_pp73-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c132389fb540c94b32b4938ba78329d8fcbc86d257cec65f83564dfd9c20752d",
                "md5": "f659dcdb2579a791d137cca541e20e12",
                "sha256": "070f568de3bc269268296cb9265704dc5fcb9d4c12b1f1c67536624174df5d09"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "f659dcdb2579a791d137cca541e20e12",
            "packagetype": "bdist_wheel",
            "python_version": "pp38",
            "requires_python": null,
            "size": 16604,
            "upload_time": "2023-10-30T19:54:29",
            "upload_time_iso_8601": "2023-10-30T19:54:29.300996Z",
            "url": "https://files.pythonhosted.org/packages/c1/32/389fb540c94b32b4938ba78329d8fcbc86d257cec65f83564dfd9c20752d/ciso8601-2.3.1-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "802bdde2e288e6edf4fdc658e919aec2459bc8281a870ed4d357748a90acb1f3",
                "md5": "315942a7375baf9bee48a2e3034e596e",
                "sha256": "9065053c034c80c0afd74c71a4906675d07078a05cfd1cb5ff70661378cdbe60"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-pp38-pypy38_pp73-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "315942a7375baf9bee48a2e3034e596e",
            "packagetype": "bdist_wheel",
            "python_version": "pp38",
            "requires_python": null,
            "size": 17194,
            "upload_time": "2023-10-30T19:54:30",
            "upload_time_iso_8601": "2023-10-30T19:54:30.368106Z",
            "url": "https://files.pythonhosted.org/packages/80/2b/dde2e288e6edf4fdc658e919aec2459bc8281a870ed4d357748a90acb1f3/ciso8601-2.3.1-pp38-pypy38_pp73-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "58182c40c4ee244506568398505558171c9243a7d0d46338fc5b87c3142573ed",
                "md5": "ca3bf14d3f3b6be125f2888bc3b85b5d",
                "sha256": "4ac00d293cdb3d1a5c78e09b3d75c7b0292ab45d5b26853b436ff5087eba2165"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "ca3bf14d3f3b6be125f2888bc3b85b5d",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": null,
            "size": 16539,
            "upload_time": "2023-10-30T19:54:31",
            "upload_time_iso_8601": "2023-10-30T19:54:31.500871Z",
            "url": "https://files.pythonhosted.org/packages/58/18/2c40c4ee244506568398505558171c9243a7d0d46338fc5b87c3142573ed/ciso8601-2.3.1-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4f41290f99b05361d10c9acb6dbc76a302b56c3a47cf6725d8a8f77d838fc560",
                "md5": "79b7ed14ab7c2d1fac76e171aa6e9b9a",
                "sha256": "06941e2ee46701f083aeb21d13eb762d74d5ed6c46ff22119f27a42ed6edc8f9"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1-pp39-pypy39_pp73-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "79b7ed14ab7c2d1fac76e171aa6e9b9a",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": null,
            "size": 17197,
            "upload_time": "2023-10-30T19:54:32",
            "upload_time_iso_8601": "2023-10-30T19:54:32.974827Z",
            "url": "https://files.pythonhosted.org/packages/4f/41/290f99b05361d10c9acb6dbc76a302b56c3a47cf6725d8a8f77d838fc560/ciso8601-2.3.1-pp39-pypy39_pp73-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "acbccf42c1b0042f91c90a6b00244f63b6fb137af15e43e29f07bb72cf955be8",
                "md5": "01ac2f2f4feba857a2ce6997b9571611",
                "sha256": "3212c7ffe5d8080270548b5f2692ffd2039683b6628a8d2ad456122cc5793c4c"
            },
            "downloads": -1,
            "filename": "ciso8601-2.3.1.tar.gz",
            "has_sig": false,
            "md5_digest": "01ac2f2f4feba857a2ce6997b9571611",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 31225,
            "upload_time": "2023-10-30T19:54:34",
            "upload_time_iso_8601": "2023-10-30T19:54:34.546132Z",
            "url": "https://files.pythonhosted.org/packages/ac/bc/cf42c1b0042f91c90a6b00244f63b6fb137af15e43e29f07bb72cf955be8/ciso8601-2.3.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-10-30 19:54:34",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "closeio",
    "github_project": "ciso8601",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "circle": true,
    "tox": true,
    "lcname": "ciso8601"
}
        
Elapsed time: 0.13413s