From ee30a679fec81221352445e1e09f0a7e4947c955 Mon Sep 17 00:00:00 2001
From: Alexandre Detiste <tchet@debian.org>
Date: Wed, 20 Dec 2023 10:27:52 +0100
Bug-Debian: https://bugs.debian.org/#1059098
Subject: [PATCH] remove usage of python3-future, this module is not compatible
 with Py3.12

---
 requirements.txt             |  1 -
 test/cirs_test.py            |  2 +-
 test/test_util.py            |  3 +--
 tox.ini                      |  1 -
 ulmo/cpc/drought/core.py     |  7 +------
 ulmo/cuahsi/wof/core.py      |  3 ---
 ulmo/nasa/daymet/core.py     |  7 ++-----
 ulmo/ncdc/cirs/core.py       |  4 +---
 ulmo/ncdc/ghcn_daily/core.py |  4 +---
 ulmo/ncdc/gsod/core.py       |  4 +---
 ulmo/ncdc/gsod/pytables.py   |  3 +--
 ulmo/usace/swtwc/core.py     |  5 -----
 ulmo/usgs/ned/core.py        | 21 ++++++++++-----------
 ulmo/usgs/nwis/core.py       |  5 +----
 ulmo/usgs/nwis/hdf5.py       |  4 +---
 ulmo/util/misc.py            |  7 +------
 ulmo/util/raster.py          |  5 ++---
 ulmo/waterml/common.py       |  2 +-
 19 files changed, 25 insertions(+), 64 deletions(-)

--- a/requirements.txt
+++ b/requirements.txt
@@ -1,6 +1,5 @@
 appdirs
 beautifulsoup4
-future
 geojson
 isodate
 lxml
--- a/test/cirs_test.py
+++ b/test/cirs_test.py
@@ -1,4 +1,4 @@
-from past.builtins import basestring
+basestring = str
 import copy
 
 import numpy as np
--- a/test/test_util.py
+++ b/test/test_util.py
@@ -1,5 +1,4 @@
-from builtins import zip
-from past.builtins import basestring
+basestring = str
 import contextlib
 import os
 import os.path
--- a/tox.ini
+++ b/tox.ini
@@ -13,5 +13,4 @@ commands=
     pip install numexpr
     pip install pandas
     pip install tables
-    pip install future
     py.test {posargs}
--- a/ulmo/cpc/drought/core.py
+++ b/ulmo/cpc/drought/core.py
@@ -8,11 +8,6 @@
     .. _Climate Prediction Center: http://www.cpc.ncep.noaa.gov/
     .. _Weekly Drought Index: http://www.cpc.ncep.noaa.gov/products/analysis_monitoring/cdus/palmer_drought/
 """
-from __future__ import division
-from builtins import str
-from builtins import range
-from past.utils import old_div
-
 import datetime
 import os
 import requests
@@ -338,4 +333,4 @@ def _week_number(date):
     if date_ts < first_sunday_ts:
         first_sunday_ts = pandas.Timestamp(_first_sunday(date.year - 1))
     days_since_first_sunday = (date_ts - first_sunday_ts).days
-    return (first_sunday_ts.year, (old_div(days_since_first_sunday, 7)) + 1)
+    return (first_sunday_ts.year, (days_since_first_sunday // 7) + 1)
--- a/ulmo/cuahsi/wof/core.py
+++ b/ulmo/cuahsi/wof/core.py
@@ -5,10 +5,7 @@
 
     .. _CUAHSI WaterOneFlow: https://his.cuahsi.org/wofws.html
 """
-from future import standard_library
-standard_library.install_aliases()
 import os
-from builtins import str
 import io
 
 import suds.client
--- a/ulmo/nasa/daymet/core.py
+++ b/ulmo/nasa/daymet/core.py
@@ -8,10 +8,7 @@
     .. _NASA EARTHDATA ORNL DAAC Daymet: https://daymet.ornl.gov/dataaccess.html
 
 """
-from future import standard_library
-standard_library.install_aliases()
-from builtins import str
-from past.builtins import basestring
+basestring = str
 import contextlib
 import io
 import datetime
@@ -172,4 +169,4 @@ def _get_service_url(url_params):
 
     if 'years' in url_params:
         url += "&year={}".format(url_params['years'])
-    return url
\ No newline at end of file
+    return url
--- a/ulmo/ncdc/cirs/core.py
+++ b/ulmo/ncdc/cirs/core.py
@@ -8,9 +8,7 @@
     .. _National Climatic Data Center: http://www.ncdc.noaa.gov
     .. _Climate Index Reference Sequential (CIRS): http://www1.ncdc.noaa.gov/pub/data/cirs/
 """
-from builtins import str
-from builtins import range
-from past.builtins import basestring
+basestring = str
 import distutils.version
 import os.path
 
--- a/ulmo/ncdc/ghcn_daily/core.py
+++ b/ulmo/ncdc/ghcn_daily/core.py
@@ -10,9 +10,7 @@
     .. _Global Historical Climate Network - Daily: http://www.ncdc.noaa.gov/oa/climate/ghcn-daily/
 
 """
-from builtins import str
-from builtins import range
-from past.builtins import basestring
+basestring = str
 import itertools
 import os
 
--- a/ulmo/ncdc/gsod/core.py
+++ b/ulmo/ncdc/gsod/core.py
@@ -8,9 +8,7 @@
     .. _National Climatic Data Center: http://www.ncdc.noaa.gov
     .. _Global Summary of the Day: http://www.ncdc.noaa.gov/oa/gsod.html
 """
-from builtins import str
-from builtins import range
-from past.builtins import basestring
+basestring = str
 from contextlib import contextmanager
 import csv
 import datetime
--- a/ulmo/ncdc/gsod/pytables.py
+++ b/ulmo/ncdc/gsod/pytables.py
@@ -1,5 +1,4 @@
-from builtins import range
-from past.builtins import basestring
+basestring = str
 import datetime
 
 import tables
--- a/ulmo/usace/swtwc/core.py
+++ b/ulmo/usace/swtwc/core.py
@@ -9,11 +9,6 @@
     .. _Tulsa District Water Control: http://www.swt-wc.usace.army.mil/
 
 """
-from future import standard_library
-standard_library.install_aliases()
-from builtins import str
-from builtins import zip
-from builtins import range
 import datetime
 import os.path
 
--- a/ulmo/usgs/ned/core.py
+++ b/ulmo/usgs/ned/core.py
@@ -10,8 +10,7 @@
     .. _National Map: http://nationalmap.gov
 
 """
-from __future__ import print_function
-from past.builtins import basestring
+basestring = str
 
 from geojson import Feature, FeatureCollection, Polygon
 import logging
--- a/ulmo/usgs/nwis/core.py
+++ b/ulmo/usgs/nwis/core.py
@@ -8,10 +8,7 @@
     .. _USGS National Water Information System: http://waterdata.usgs.gov/nwis
 
 """
-from future import standard_library
-standard_library.install_aliases()
-from builtins import str
-from past.builtins import basestring
+basestring = str
 import contextlib
 import io
 import datetime
--- a/ulmo/usgs/nwis/hdf5.py
+++ b/ulmo/usgs/nwis/hdf5.py
@@ -1,6 +1,4 @@
-from builtins import map
-from builtins import zip
-from past.builtins import basestring
+basestring = str
 import contextlib
 import copy
 from datetime import datetime
--- a/ulmo/util/misc.py
+++ b/ulmo/util/misc.py
@@ -1,9 +1,4 @@
-from future import standard_library
-standard_library.install_aliases()
-from builtins import zip
-from builtins import str
-from past.builtins import basestring
-from builtins import object
+basestring = str
 from contextlib import contextmanager
 import datetime
 import email.utils
--- a/ulmo/util/raster.py
+++ b/ulmo/util/raster.py
@@ -4,8 +4,7 @@
 
    Collection of useful functions for raster manipulation
 """
-from __future__ import print_function
-from past.builtins import basestring
+basestring = str
 
 import contextlib
 import hashlib
@@ -70,4 +69,4 @@ def extract_from_zip(zip_path, tile_path
 
 
 def generate_raster_uid(layer, xmin, ymin, xmax, ymax):
-    return hashlib.md5(','.join([layer, repr(xmin), repr(ymin), repr(xmax), repr(ymax)])).hexdigest()
\ No newline at end of file
+    return hashlib.md5(','.join([layer, repr(xmin), repr(ymin), repr(xmax), repr(ymax)])).hexdigest()
--- a/ulmo/waterml/common.py
+++ b/ulmo/waterml/common.py
@@ -1,7 +1,7 @@
 import isodate
 
 from lxml import etree
-from past.builtins import basestring
+basestring = str
 
 from ulmo import util
 
