15
0
forked from pool/python-arrow
Files
python-arrow/arrow-py37.patch

75 lines
2.8 KiB
Diff

From 48f5332dcdb821b0625c256972c82e48f791f39a Mon Sep 17 00:00:00 2001
From: "Kristijan \"Fremen\" Velkovski" <me@krisfremen.com>
Date: Sun, 9 Sep 2018 10:17:46 +0000
Subject: [PATCH 1/3] Python 3.7 support.
---
arrow/arrow.py | 14 +++++++-------
arrow/util.py | 8 --------
3 files changed, 11 insertions(+), 15 deletions(-)
diff --git a/arrow/arrow.py b/arrow/arrow.py
index c8e2606..054889f 100644
--- a/arrow/arrow.py
+++ b/arrow/arrow.py
@@ -195,7 +195,6 @@ def strptime(cls, date_str, fmt, tzinfo=None):
# factories: ranges and spans
@classmethod
- @util.list_to_iter_deprecation
def range(cls, frame, start, end=None, tz=None, limit=None):
''' Returns an iterator of :class:`Arrow <arrow.arrow.Arrow>` objects, representing
points in time between two inputs.
@@ -267,7 +266,6 @@ def range(cls, frame, start, end=None, tz=None, limit=None):
@classmethod
- @util.list_to_iter_deprecation
def span_range(cls, frame, start, end, tz=None, limit=None):
''' Returns an iterator of tuples, each :class:`Arrow <arrow.arrow.Arrow>` objects,
representing a series of timespans between two inputs.
@@ -319,7 +317,6 @@ def span_range(cls, frame, start, end, tz=None, limit=None):
return (r.span(frame) for r in _range)
@classmethod
- @util.list_to_iter_deprecation
def interval(cls, frame, start, end, interval=1, tz=None):
''' Returns an iterator of tuples, each :class:`Arrow <arrow.arrow.Arrow>` objects,
representing a series of intervals between two inputs.
@@ -360,10 +357,13 @@ def interval(cls, frame, start, end, interval=1, tz=None):
spanRange = iter(cls.span_range(frame, start, end, tz))
while True:
- intvlStart, intvlEnd = next(spanRange) # StopIteration when exhausted
- for _ in range(interval-1):
- _, intvlEnd = next(spanRange) # StopIteration when exhausted
- yield intvlStart, intvlEnd
+ try:
+ intvlStart, intvlEnd = next(spanRange)
+ for _ in range(interval-1):
+ _, intvlEnd = next(spanRange)
+ yield intvlStart, intvlEnd
+ except StopIteration:
+ return
# representations
diff --git a/arrow/util.py b/arrow/util.py
index 088e5df..5f804c4 100644
--- a/arrow/util.py
+++ b/arrow/util.py
@@ -99,12 +99,4 @@ def wrapper(self, *args, **kwargs):
del _wrap_method
-def list_to_iter_deprecation(f):
- warn_text = '{0}() will return an iterator in a future release, convert to list({0}())'.format(f.__name__)
- @functools.wraps(f)
- def wrapper(*args, **kwargs):
- return list_to_iter_shim(f(*args, **kwargs), warn_text=warn_text)
- return wrapper
-
-
__all__ = ['total_seconds', 'is_timestamp', 'isstr', 'list_to_iter_shim', 'list_to_iter_deprecation']