Mercurial > repos > shellac > sam_consensus_v3
comparison env/lib/python3.9/site-packages/isodate-0.6.0.dist-info/DESCRIPTION.rst @ 0:4f3585e2f14b draft default tip
"planemo upload commit 60cee0fc7c0cda8592644e1aad72851dec82c959"
| author | shellac |
|---|---|
| date | Mon, 22 Mar 2021 18:12:50 +0000 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| -1:000000000000 | 0:4f3585e2f14b |
|---|---|
| 1 | |
| 2 ISO 8601 date/time parser | |
| 3 ========================= | |
| 4 | |
| 5 .. image:: https://travis-ci.org/gweis/isodate.svg?branch=master | |
| 6 :target: https://travis-ci.org/gweis/isodate | |
| 7 :alt: Travis-CI | |
| 8 .. image:: https://coveralls.io/repos/gweis/isodate/badge.svg?branch=master | |
| 9 :target: https://coveralls.io/r/gweis/isodate?branch=master | |
| 10 :alt: Coveralls | |
| 11 .. image:: https://img.shields.io/pypi/v/isodate.svg | |
| 12 :target: https://pypi.python.org/pypi/isodate/ | |
| 13 :alt: Latest Version | |
| 14 .. image:: https://img.shields.io/pypi/l/isodate.svg | |
| 15 :target: https://pypi.python.org/pypi/isodate/ | |
| 16 :alt: License | |
| 17 | |
| 18 | |
| 19 This module implements ISO 8601 date, time and duration parsing. | |
| 20 The implementation follows ISO8601:2004 standard, and implements only | |
| 21 date/time representations mentioned in the standard. If something is not | |
| 22 mentioned there, then it is treated as non existent, and not as an allowed | |
| 23 option. | |
| 24 | |
| 25 For instance, ISO8601:2004 never mentions 2 digit years. So, it is not | |
| 26 intended by this module to support 2 digit years. (while it may still | |
| 27 be valid as ISO date, because it is not explicitly forbidden.) | |
| 28 Another example is, when no time zone information is given for a time, | |
| 29 then it should be interpreted as local time, and not UTC. | |
| 30 | |
| 31 As this module maps ISO 8601 dates/times to standard Python data types, like | |
| 32 *date*, *time*, *datetime* and *timedelta*, it is not possible to convert | |
| 33 all possible ISO 8601 dates/times. For instance, dates before 0001-01-01 are | |
| 34 not allowed by the Python *date* and *datetime* classes. Additionally | |
| 35 fractional seconds are limited to microseconds. That means if the parser finds | |
| 36 for instance nanoseconds it will round it to microseconds. | |
| 37 | |
| 38 Documentation | |
| 39 ------------- | |
| 40 | |
| 41 Currently there are four parsing methods available. | |
| 42 * parse_time: | |
| 43 parses an ISO 8601 time string into a *time* object | |
| 44 * parse_date: | |
| 45 parses an ISO 8601 date string into a *date* object | |
| 46 * parse_datetime: | |
| 47 parses an ISO 8601 date-time string into a *datetime* object | |
| 48 * parse_duration: | |
| 49 parses an ISO 8601 duration string into a *timedelta* or *Duration* | |
| 50 object. | |
| 51 * parse_tzinfo: | |
| 52 parses the time zone info part of an ISO 8601 string into a | |
| 53 *tzinfo* object. | |
| 54 | |
| 55 As ISO 8601 allows to define durations in years and months, and *timedelta* | |
| 56 does not handle years and months, this module provides a *Duration* class, | |
| 57 which can be used almost like a *timedelta* object (with some limitations). | |
| 58 However, a *Duration* object can be converted into a *timedelta* object. | |
| 59 | |
| 60 There are also ISO formatting methods for all supported data types. Each | |
| 61 *xxx_isoformat* method accepts a format parameter. The default format is | |
| 62 always the ISO 8601 expanded format. This is the same format used by | |
| 63 *datetime.isoformat*: | |
| 64 | |
| 65 * time_isoformat: | |
| 66 Intended to create ISO time strings with default format | |
| 67 *hh:mm:ssZ*. | |
| 68 * date_isoformat: | |
| 69 Intended to create ISO date strings with default format | |
| 70 *yyyy-mm-dd*. | |
| 71 * datetime_isoformat: | |
| 72 Intended to create ISO date-time strings with default format | |
| 73 *yyyy-mm-ddThh:mm:ssZ*. | |
| 74 * duration_isoformat: | |
| 75 Intended to create ISO duration strings with default format | |
| 76 *PnnYnnMnnDTnnHnnMnnS*. | |
| 77 * tz_isoformat: | |
| 78 Intended to create ISO time zone strings with default format | |
| 79 *hh:mm*. | |
| 80 * strftime: | |
| 81 A re-implementation mostly compatible with Python's *strftime*, but | |
| 82 supports only those format strings, which can also be used for dates | |
| 83 prior 1900. This method also understands how to format *datetime* and | |
| 84 *Duration* instances. | |
| 85 | |
| 86 Installation: | |
| 87 ------------- | |
| 88 | |
| 89 This module can easily be installed with Python standard installation methods. | |
| 90 | |
| 91 Either use *python setup.py install* or in case you have *setuptools* or | |
| 92 *distribute* available, you can also use *easy_install*. | |
| 93 | |
| 94 Limitations: | |
| 95 ------------ | |
| 96 | |
| 97 * The parser accepts several date/time representation which should be invalid | |
| 98 according to ISO 8601 standard. | |
| 99 | |
| 100 1. for date and time together, this parser accepts a mixture of basic and extended format. | |
| 101 e.g. the date could be in basic format, while the time is accepted in extended format. | |
| 102 It also allows short dates and times in date-time strings. | |
| 103 2. For incomplete dates, the first day is chosen. e.g. 19th century results in a date of | |
| 104 1901-01-01. | |
| 105 3. negative *Duration* and *timedelta* value are not fully supported yet. | |
| 106 | |
| 107 Further information: | |
| 108 -------------------- | |
| 109 | |
| 110 The doc strings and unit tests should provide rather detailed information about | |
| 111 the methods and their limitations. | |
| 112 | |
| 113 The source release provides a *setup.py* script, | |
| 114 which can be used to run the unit tests included. | |
| 115 | |
| 116 Source code is available at `<http://github.com/gweis/isodate>`_. | |
| 117 | |
| 118 CHANGES | |
| 119 ======= | |
| 120 | |
| 121 0.6.0 (2017-10-13) | |
| 122 ------------------ | |
| 123 | |
| 124 - support incomplete month date (Fabien Loffredo) | |
| 125 - rely on duck typing when doing duration maths | |
| 126 - support ':' as separator in fractional time zones (usrenmae) | |
| 127 | |
| 128 | |
| 129 0.5.4 (2015-08-06) | |
| 130 ------------------ | |
| 131 | |
| 132 - Fix parsing of Periods (Fabien Bochu) | |
| 133 - Make Duration objects hashable (Geoffrey Fairchild) | |
| 134 - Add multiplication to duration (Reinoud Elhorst) | |
| 135 | |
| 136 | |
| 137 0.5.1 (2014-11-07) | |
| 138 ------------------ | |
| 139 | |
| 140 - fixed pickling of Duration objects | |
| 141 - raise ISO8601Error when there is no 'T' separator in datetime strings (Adrian Coveney) | |
| 142 | |
| 143 | |
| 144 0.5.0 (2014-02-23) | |
| 145 ------------------ | |
| 146 | |
| 147 - ISO8601Error are subclasses of ValueError now (Michael Hrivnak) | |
| 148 - improve compatibility across various python variants and versions | |
| 149 - raise exceptions when using fractional years and months in date | |
| 150 maths with durations | |
| 151 - renamed method todatetime on Duraction objects to totimedelta | |
| 152 | |
| 153 | |
| 154 0.4.9 (2012-10-30) | |
| 155 ------------------ | |
| 156 | |
| 157 - support pickling FixedOffset instances | |
| 158 - make sure parsed fractional seconds are in microseconds | |
| 159 - add leading zeros when formattig microseconds (Jarom Loveridge) | |
| 160 | |
| 161 | |
| 162 0.4.8 (2012-05-04) | |
| 163 ------------------ | |
| 164 | |
| 165 - fixed incompatibility of unittests with python 2.5 and 2.6 (runs fine on 2.7 | |
| 166 and 3.2) | |
| 167 | |
| 168 | |
| 169 0.4.7 (2012-01-26) | |
| 170 ------------------ | |
| 171 | |
| 172 - fixed tzinfo formatting (never pass None into tzinfo.utcoffset()) | |
| 173 | |
| 174 | |
| 175 0.4.6 (2012-01-06) | |
| 176 ------------------ | |
| 177 | |
| 178 - added Python 3 compatibility via 2to3 | |
| 179 | |
| 180 0.4.5 (2012-01-06) | |
| 181 ------------------ | |
| 182 | |
| 183 - made setuptools dependency optional | |
| 184 | |
| 185 0.4.4 (2011-04-16) | |
| 186 ------------------ | |
| 187 | |
| 188 - Fixed formatting of microseconds for datetime objects | |
| 189 | |
| 190 0.4.3 (2010-10-29) | |
| 191 ------------------ | |
| 192 | |
| 193 - Fixed problem with %P formating and fractions (supplied by David Brooks) | |
| 194 | |
| 195 0.4.2 (2010-10-28) | |
| 196 ------------------ | |
| 197 | |
| 198 - Implemented unary - for Duration (supplied by David Brooks) | |
| 199 - Output fractional seconds with '%P' format. (partly supplied by David Brooks) | |
| 200 | |
| 201 0.4.1 (2010-10-13) | |
| 202 ------------------ | |
| 203 | |
| 204 - fixed bug in comparison between timedelta and Duration. | |
| 205 - fixed precision problem with microseconds (reported by Tommi Virtanen) | |
| 206 | |
| 207 0.4.0 (2009-02-09) | |
| 208 ------------------ | |
| 209 | |
| 210 - added method to parse ISO 8601 time zone strings | |
| 211 - added methods to create ISO 8601 conforming strings | |
| 212 | |
| 213 0.3.0 (2009-1-05) | |
| 214 ------------------ | |
| 215 | |
| 216 - Initial release | |
| 217 | |
| 218 TODOs | |
| 219 ===== | |
| 220 | |
| 221 This to do list contains some thoughts and ideas about missing features, and | |
| 222 parts to think about, whether to implement them or not. This list is probably | |
| 223 not complete. | |
| 224 | |
| 225 Missing features: | |
| 226 ----------------- | |
| 227 | |
| 228 * time formating does not allow to create fractional representations. | |
| 229 * parser for ISO intervals. | |
| 230 * currently microseconds are always padded to a length of 6 characters. | |
| 231 trailing 0s should be optional | |
| 232 | |
| 233 Documentation: | |
| 234 -------------- | |
| 235 | |
| 236 * parse_datetime: | |
| 237 - complete documentation to show what this function allows, but ISO forbids. | |
| 238 and vice verse. | |
| 239 - support other separators between date and time than 'T' | |
| 240 | |
| 241 * parse_date: | |
| 242 - yeardigits should be always greater than 4 | |
| 243 - dates before 0001-01-01 are not supported | |
| 244 | |
| 245 * parse_duration: | |
| 246 - alternative formats are not fully supported due to parse_date restrictions | |
| 247 - standard duration format is fully supported but not very restrictive. | |
| 248 | |
| 249 * Duration: | |
| 250 - support fractional years and month in calculations | |
| 251 - implement w3c order relation? (`<http://www.w3.org/TR/xmlschema-2/#duration-order>`_) | |
| 252 - refactor to have duration mathematics only at one place. | |
| 253 - localize __str__ method (does timedelta do this?) | |
| 254 - when is a Duration negative? | |
| 255 - normalize Durations. months [00-12] and years ]-inf,+inf[ | |
| 256 | |
| 257 |
