diff options
| author | S. Solomon Darnell | 2025-03-28 21:52:21 -0500 |
|---|---|---|
| committer | S. Solomon Darnell | 2025-03-28 21:52:21 -0500 |
| commit | 4a52a71956a8d46fcb7294ac71734504bb09bcc2 (patch) | |
| tree | ee3dc5af3b6313e921cd920906356f5d4febc4ed /.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info | |
| parent | cc961e04ba734dd72309fb548a2f97d67d578813 (diff) | |
| download | gn-ai-master.tar.gz | |
Diffstat (limited to '.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info')
6 files changed, 399 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info/INSTALLER b/.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info/INSTALLER new file mode 100644 index 00000000..a1b589e3 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info/LICENSE b/.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info/LICENSE new file mode 100644 index 00000000..ccd1d66e --- /dev/null +++ b/.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info/LICENSE @@ -0,0 +1,26 @@ +Copyright (c) 2021, Hugo van Kemenade and contributors +Copyright (c) 2009-2018, Gerhard Weis and contributors +Copyright (c) 2009, Gerhard Weis +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the <organization> nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info/METADATA b/.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info/METADATA new file mode 100644 index 00000000..e8333647 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info/METADATA @@ -0,0 +1,338 @@ +Metadata-Version: 2.1 +Name: isodate +Version: 0.7.2 +Summary: An ISO 8601 date/time/duration parser and formatter +Author: Gerhard Weis +License: Copyright (c) 2021, Hugo van Kemenade and contributors + Copyright (c) 2009-2018, Gerhard Weis and contributors + Copyright (c) 2009, Gerhard Weis + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the <organization> nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Project-URL: Homepage, https://github.com/gweis/isodate/ +Classifier: Development Status :: 4 - Beta +Classifier: Intended Audience :: Developers +Classifier: License :: OSI Approved :: BSD License +Classifier: Operating System :: OS Independent +Classifier: Programming Language :: Python +Classifier: Programming Language :: Python :: 3 +Classifier: Programming Language :: Python :: 3.7 +Classifier: Programming Language :: Python :: 3.8 +Classifier: Programming Language :: Python :: 3.9 +Classifier: Programming Language :: Python :: 3.10 +Classifier: Programming Language :: Python :: 3.11 +Classifier: Programming Language :: Python :: 3.12 +Classifier: Programming Language :: Python :: 3.13 +Classifier: Programming Language :: Python :: Implementation :: CPython +Classifier: Programming Language :: Python :: Implementation :: PyPy +Classifier: Topic :: Internet +Classifier: Topic :: Software Development :: Libraries :: Python Modules +Requires-Python: >=3.7 +Description-Content-Type: text/x-rst +License-File: LICENSE + + +ISO 8601 date/time parser +========================= + +.. image:: https://travis-ci.org/gweis/isodate.svg?branch=master + :target: https://travis-ci.org/gweis/isodate + :alt: Travis-CI +.. image:: https://coveralls.io/repos/gweis/isodate/badge.svg?branch=master + :target: https://coveralls.io/r/gweis/isodate?branch=master + :alt: Coveralls +.. image:: https://img.shields.io/pypi/v/isodate.svg + :target: https://pypi.python.org/pypi/isodate/ + :alt: Latest Version +.. image:: https://img.shields.io/pypi/l/isodate.svg + :target: https://pypi.python.org/pypi/isodate/ + :alt: License + + +This module implements ISO 8601 date, time and duration parsing. +The implementation follows ISO8601:2004 standard, and implements only +date/time representations mentioned in the standard. If something is not +mentioned there, then it is treated as non existent, and not as an allowed +option. + +For instance, ISO8601:2004 never mentions 2 digit years. So, it is not +intended by this module to support 2 digit years. (while it may still +be valid as ISO date, because it is not explicitly forbidden.) +Another example is, when no time zone information is given for a time, +then it should be interpreted as local time, and not UTC. + +As this module maps ISO 8601 dates/times to standard Python data types, like +*date*, *time*, *datetime* and *timedelta*, it is not possible to convert +all possible ISO 8601 dates/times. For instance, dates before 0001-01-01 are +not allowed by the Python *date* and *datetime* classes. Additionally +fractional seconds are limited to microseconds. That means if the parser finds +for instance nanoseconds it will round it down to microseconds. + +Documentation +------------- + +The following parsing methods are available. + * parse_time: + parses an ISO 8601 time string into a *time* object + * parse_date: + parses an ISO 8601 date string into a *date* object + * parse_datetime: + parses an ISO 8601 date-time string into a *datetime* object + * parse_duration: + parses an ISO 8601 duration string into a *timedelta* or *Duration* + object. + * parse_tzinfo: + parses the time zone info part of an ISO 8601 string into a + *tzinfo* object. + +As ISO 8601 allows to define durations in years and months, and *timedelta* +does not handle years and months, this module provides a *Duration* class, +which can be used almost like a *timedelta* object (with some limitations). +However, a *Duration* object can be converted into a *timedelta* object. + +There are also ISO formatting methods for all supported data types. Each +*xxx_isoformat* method accepts a format parameter. The default format is +always the ISO 8601 expanded format. This is the same format used by +*datetime.isoformat*: + + * time_isoformat: + Intended to create ISO time strings with default format + *hh:mm:ssZ*. + * date_isoformat: + Intended to create ISO date strings with default format + *yyyy-mm-dd*. + * datetime_isoformat: + Intended to create ISO date-time strings with default format + *yyyy-mm-ddThh:mm:ssZ*. + * duration_isoformat: + Intended to create ISO duration strings with default format + *PnnYnnMnnDTnnHnnMnnS*. + * tz_isoformat: + Intended to create ISO time zone strings with default format + *hh:mm*. + * strftime: + A re-implementation mostly compatible with Python's *strftime*, but + supports only those format strings, which can also be used for dates + prior 1900. This method also understands how to format *datetime* and + *Duration* instances. + +Installation +------------ + +This module can easily be installed with Python standard installation methods. + +Use *pip install isodate*. + +Limitations +----------- + + * The parser accepts several date/time representation which should be invalid + according to ISO 8601 standard. + + 1. for date and time together, this parser accepts a mixture of basic and extended format. + e.g. the date could be in basic format, while the time is accepted in extended format. + It also allows short dates and times in date-time strings. + 2. For incomplete dates, the first day is chosen. e.g. 19th century results in a date of + 1901-01-01. + 3. negative *Duration* and *timedelta* value are not fully supported yet. + +Further information +------------------- + +The doc strings and unit tests should provide rather detailed information about +the methods and their limitations. + +The source release provides a *setup.py* script, +which can be used to run the unit tests included. + +Source code is available at `<https://github.com/gweis/isodate>`_. + + +CHANGES +======= + +0.7.3 (unreleased) +------------------ + +- no changes yet + + +0.7.2 (2024-10-08) +------------------ + +- drop end of life python versions +- Don't match garbage characters at the end of parsed strings #16 (Gabriel de Perthuis) + + +Potentially breaking changes: +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +- Fractional seconds are cut off to microseconds (always round down) +- Allow control over return type of parse_duration #64 (Felix Claessen) +- Python >= 3.7 required + + +0.6.1 (2021-12-13) +------------------ + +- support python 3.10 (Hugo van Kemenade) +- last version to support py 2.7 + + +0.6.0 (2017-10-13) +------------------ + +- support incomplete month date (Fabien Loffredo) +- rely on duck typing when doing duration maths +- support ':' as separator in fractional time zones (usrenmae) + + +0.5.4 (2015-08-06) +------------------ + +- Fix parsing of Periods (Fabien Bochu) +- Make Duration objects hashable (Geoffrey Fairchild) +- Add multiplication to duration (Reinoud Elhorst) + + +0.5.1 (2014-11-07) +------------------ + +- fixed pickling of Duration objects +- raise ISO8601Error when there is no 'T' separator in datetime strings (Adrian Coveney) + + +0.5.0 (2014-02-23) +------------------ + +- ISO8601Error are subclasses of ValueError now (Michael Hrivnak) +- improve compatibility across various python variants and versions +- raise exceptions when using fractional years and months in date + maths with durations +- renamed method todatetime on Duraction objects to totimedelta + + +0.4.9 (2012-10-30) +------------------ + +- support pickling FixedOffset instances +- make sure parsed fractional seconds are in microseconds +- add leading zeros when formattig microseconds (Jarom Loveridge) + + +0.4.8 (2012-05-04) +------------------ + +- fixed incompatibility of unittests with python 2.5 and 2.6 (runs fine on 2.7 + and 3.2) + + +0.4.7 (2012-01-26) +------------------ + +- fixed tzinfo formatting (never pass None into tzinfo.utcoffset()) + + +0.4.6 (2012-01-06) +------------------ + +- added Python 3 compatibility via 2to3 + +0.4.5 (2012-01-06) +------------------ + +- made setuptools dependency optional + +0.4.4 (2011-04-16) +------------------ + +- Fixed formatting of microseconds for datetime objects + +0.4.3 (2010-10-29) +------------------ + +- Fixed problem with %P formatting and fractions (supplied by David Brooks) + +0.4.2 (2010-10-28) +------------------ + +- Implemented unary - for Duration (supplied by David Brooks) +- Output fractional seconds with '%P' format. (partly supplied by David Brooks) + +0.4.1 (2010-10-13) +------------------ + +- fixed bug in comparison between timedelta and Duration. +- fixed precision problem with microseconds (reported by Tommi Virtanen) + +0.4.0 (2009-02-09) +------------------ + +- added method to parse ISO 8601 time zone strings +- added methods to create ISO 8601 conforming strings + +0.3.0 (2009-1-05) +------------------ + +- Initial release + + +TODOs +===== + +This to do list contains some thoughts and ideas about missing features, and +parts to think about, whether to implement them or not. This list is probably +not complete. + +Missing features: +----------------- + + * time formatting does not allow to create fractional representations. + * parser for ISO intervals. + * currently microseconds are always padded to a length of 6 characters. + trailing 0s should be optional + +Documentation: +-------------- + + * parse_datetime: + - complete documentation to show what this function allows, but ISO forbids. + and vice verse. + - support other separators between date and time than 'T' + + * parse_date: + - yeardigits should be always greater than 4 + - dates before 0001-01-01 are not supported + + * parse_duration: + - alternative formats are not fully supported due to parse_date restrictions + - standard duration format is fully supported but not very restrictive. + + * Duration: + - support fractional years and month in calculations + - implement w3c order relation? (`<http://www.w3.org/TR/xmlschema-2/#duration-order>`_) + - refactor to have duration mathematics only at one place. + - localize __str__ method (does timedelta do this?) + - when is a Duration negative? + - normalize Durations. months [00-12] and years ]-inf,+inf[ diff --git a/.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info/RECORD b/.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info/RECORD new file mode 100644 index 00000000..16786c78 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info/RECORD @@ -0,0 +1,28 @@ +isodate-0.7.2.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +isodate-0.7.2.dist-info/LICENSE,sha256=zl_kiT-2q4Q953s2e_qduXTXsAq5Az_MqNd2Cpf-G0M,1609 +isodate-0.7.2.dist-info/METADATA,sha256=kLydHu58PJf9OlIAHezgfA-bSAz8j7v3Z8pK4KuEhSk,11852 +isodate-0.7.2.dist-info/RECORD,, +isodate-0.7.2.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91 +isodate-0.7.2.dist-info/top_level.txt,sha256=JgdqaHBw0Vx74Km0xZ1-6npOUHe_6cKHSBCEx6ppVe8,8 +isodate/__init__.py,sha256=wfPI3mcDnLbEndidaozWK_i_XGtOyrGhTFc35Ppt9IM,2397 +isodate/__pycache__/__init__.cpython-312.pyc,, +isodate/__pycache__/duration.cpython-312.pyc,, +isodate/__pycache__/isodates.cpython-312.pyc,, +isodate/__pycache__/isodatetime.cpython-312.pyc,, +isodate/__pycache__/isoduration.cpython-312.pyc,, +isodate/__pycache__/isoerror.cpython-312.pyc,, +isodate/__pycache__/isostrf.cpython-312.pyc,, +isodate/__pycache__/isotime.cpython-312.pyc,, +isodate/__pycache__/isotzinfo.cpython-312.pyc,, +isodate/__pycache__/tzinfo.cpython-312.pyc,, +isodate/__pycache__/version.cpython-312.pyc,, +isodate/duration.py,sha256=D9VLJA4S99i6-3OXaCHrrDzc05WsIr2IShfISleJL7Y,11008 +isodate/isodates.py,sha256=xb357SsvoBRSVsEUpG2fqBSnjGjwkUxsi5VHkjGjGzk,8529 +isodate/isodatetime.py,sha256=9ZMng6n4blKWSsFHAk1BsDyom0XbHTz7PrxpWiIMOj4,1373 +isodate/isoduration.py,sha256=p7SvBbx80yiVyXdDTJ7MkJxqFGYY6fNDSS-ORFErZbI,5423 +isodate/isoerror.py,sha256=x6SO6y4dDcdJgWOkjwVNRw-OOiihctMj5Te9dOqrqsE,168 +isodate/isostrf.py,sha256=l7A1mB532bQ4n0WMw2OaLKsq53lVFe6F3FStMFkl6s0,7039 +isodate/isotime.py,sha256=un4auH91jLjh99BuHoP1Vw_tjCWOb8BNvyRst4k0IXo,5544 +isodate/isotzinfo.py,sha256=VEzTUs9IulAxC1Cez_UupiwEZW2jSxqKYQ0TMV1vfuM,2672 +isodate/tzinfo.py,sha256=Nt15RKjqz7iYByAsT-9HIlwvyvMRUCWeQrW-Ita6ouk,3784 +isodate/version.py,sha256=SwvkPl7GLhGxWFK-GDetxs6qkq8TTqCfnxJUNJqmWtU,411 diff --git a/.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info/WHEEL b/.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info/WHEEL new file mode 100644 index 00000000..dcfdc6e3 --- /dev/null +++ b/.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info/WHEEL @@ -0,0 +1,5 @@ +Wheel-Version: 1.0 +Generator: setuptools (75.1.0) +Root-Is-Purelib: true +Tag: py3-none-any + diff --git a/.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info/top_level.txt b/.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info/top_level.txt new file mode 100644 index 00000000..817963df --- /dev/null +++ b/.venv/lib/python3.12/site-packages/isodate-0.7.2.dist-info/top_level.txt @@ -0,0 +1 @@ +isodate |
