File remove-future-requirement.patch of Package python-ffmpeg-python

From d23ad83290d1760756e7edbebd46608e3141bd1e Mon Sep 17 00:00:00 2001
From: Karl Kroening <karlk@kralnet.us>
Date: Fri, 5 Jul 2019 19:39:07 -0500
Subject: [PATCH 1/5] Drop `future` install-requirement

---
 ffmpeg/_ffmpeg.py |  2 --
 ffmpeg/_utils.py  |  1 -
 ffmpeg/nodes.py   |  6 +++---
 setup.py          | 28 +++++++++++++++++-----------
 4 files changed, 20 insertions(+), 17 deletions(-)

diff --git a/ffmpeg/_ffmpeg.py b/ffmpeg/_ffmpeg.py
index 31e2b90..cfe6356 100644
--- a/ffmpeg/_ffmpeg.py
+++ b/ffmpeg/_ffmpeg.py
@@ -1,6 +1,4 @@
 from __future__ import unicode_literals
-
-from past.builtins import basestring
 from ._utils import basestring
 
 from .nodes import (
diff --git a/ffmpeg/_utils.py b/ffmpeg/_utils.py
index d41f2fd..10d0c36 100644
--- a/ffmpeg/_utils.py
+++ b/ffmpeg/_utils.py
@@ -1,6 +1,5 @@
 from __future__ import unicode_literals
 from builtins import str
-from past.builtins import basestring
 import hashlib
 import sys
 
diff --git a/ffmpeg/nodes.py b/ffmpeg/nodes.py
index cacab8e..f4b8f7f 100644
--- a/ffmpeg/nodes.py
+++ b/ffmpeg/nodes.py
@@ -1,8 +1,8 @@
 from __future__ import unicode_literals
-
-from past.builtins import basestring
 from .dag import KwargReprNode
-from ._utils import escape_chars, get_hash_int
+from ._utils import basestring
+from ._utils import escape_chars
+from ._utils import get_hash_int
 from builtins import object
 import os
 
diff --git a/setup.py b/setup.py
index 0282c67..946fd5a 100644
--- a/setup.py
+++ b/setup.py
@@ -1,5 +1,7 @@
 from setuptools import setup
 from textwrap import dedent
+import sys
+
 
 version = '0.2.0'
 download_url = 'https://github.com/kkroening/ffmpeg-python/archive/v{}.zip'.format(
@@ -57,6 +59,19 @@
 
 keywords = misc_keywords + file_formats
 
+
+dev_requires = [
+    'future>=0.17.1',
+    'numpy>=1.16.4',
+    'pytest-mock>=1.10.4',
+    'pytest>=4.6.1',
+    'tox>=3.12.1',
+]
+
+if sys.version_info[0] >= 3:
+    dev_requires += ['Sphinx>=2.1.0']
+
+
 setup(
     name='ffmpeg-python',
     packages=['ffmpeg'],
@@ -70,17 +85,8 @@
     download_url=download_url,
     keywords=keywords,
     long_description=long_description,
-    install_requires=['future'],
-    extras_require={
-        'dev': [
-            'future==0.17.1',
-            'numpy==1.16.4',
-            'pytest-mock==1.10.4',
-            'pytest==4.6.1',
-            'Sphinx==2.1.0',
-            'tox==3.12.1',
-        ]
-    },
+    install_requires=[],
+    extras_require={'dev': dev_requires},
     classifiers=[
         'Intended Audience :: Developers',
         'License :: OSI Approved :: Apache Software License',

From 7611a29ae6b8925f3f602ccc387c8543feb52116 Mon Sep 17 00:00:00 2001
From: Karl Kroening <karlk@kralnet.us>
Date: Fri, 5 Jul 2019 19:50:57 -0500
Subject: [PATCH 2/5] Drop `builtins` import

---
 ffmpeg/_run.py              | 1 -
 ffmpeg/_utils.py            | 7 +------
 ffmpeg/_view.py             | 2 --
 ffmpeg/dag.py               | 2 --
 ffmpeg/nodes.py             | 1 -
 ffmpeg/tests/test_ffmpeg.py | 7 +------
 6 files changed, 2 insertions(+), 18 deletions(-)

diff --git a/ffmpeg/_run.py b/ffmpeg/_run.py
index afc504d..aaa92fd 100644
--- a/ffmpeg/_run.py
+++ b/ffmpeg/_run.py
@@ -1,7 +1,6 @@
 from __future__ import unicode_literals
 from .dag import get_outgoing_edges, topo_sort
 from ._utils import basestring, convert_kwargs_to_cmd_line_args
-from builtins import str
 from functools import reduce
 import collections
 import copy
diff --git a/ffmpeg/_utils.py b/ffmpeg/_utils.py
index 10d0c36..1f61d4e 100644
--- a/ffmpeg/_utils.py
+++ b/ffmpeg/_utils.py
@@ -1,5 +1,4 @@
 from __future__ import unicode_literals
-from builtins import str
 import hashlib
 import sys
 
@@ -33,14 +32,10 @@ def __new__(cls, name, this_bases, d):
 
 
 if sys.version_info.major >= 3:
-
     class basestring(with_metaclass(BaseBaseString)):
         pass
-
-
 else:
-    # noinspection PyUnresolvedReferences,PyCompatibility
-    from builtins import basestring
+    basestring = basestring
 
 
 def _recursive_repr(item):
diff --git a/ffmpeg/_view.py b/ffmpeg/_view.py
index fb129fa..2b8b0eb 100644
--- a/ffmpeg/_view.py
+++ b/ffmpeg/_view.py
@@ -1,6 +1,4 @@
 from __future__ import unicode_literals
-
-from builtins import str
 from .dag import get_outgoing_edges
 from ._run import topo_sort
 import tempfile
diff --git a/ffmpeg/dag.py b/ffmpeg/dag.py
index 9564d7f..02ce83f 100644
--- a/ffmpeg/dag.py
+++ b/ffmpeg/dag.py
@@ -1,7 +1,5 @@
 from __future__ import unicode_literals
-
 from ._utils import get_hash, get_hash_int
-from builtins import object
 from collections import namedtuple
 
 
diff --git a/ffmpeg/nodes.py b/ffmpeg/nodes.py
index f4b8f7f..e4150c2 100644
--- a/ffmpeg/nodes.py
+++ b/ffmpeg/nodes.py
@@ -3,7 +3,6 @@
 from ._utils import basestring
 from ._utils import escape_chars
 from ._utils import get_hash_int
-from builtins import object
 import os
 
 
diff --git a/ffmpeg/tests/test_ffmpeg.py b/ffmpeg/tests/test_ffmpeg.py
index 279a323..c32b89e 100644
--- a/ffmpeg/tests/test_ffmpeg.py
+++ b/ffmpeg/tests/test_ffmpeg.py
@@ -1,7 +1,4 @@
 from __future__ import unicode_literals
-from builtins import bytes
-from builtins import range
-from builtins import str
 import ffmpeg
 import os
 import pytest
@@ -689,9 +686,7 @@ def test_pipe():
         cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE
     )
 
-    in_data = bytes(
-        bytearray([random.randint(0, 255) for _ in range(frame_size * frame_count)])
-    )
+    in_data = bytearray([random.randint(0, 255) for _ in range(frame_size * frame_count)])
     p.stdin.write(in_data)  # note: this could block, in which case need to use threads
     p.stdin.close()
 

From e740f6bb49504d66567dc4d1956cea36b92ae3b5 Mon Sep 17 00:00:00 2001
From: Karl Kroening <karlk@kralnet.us>
Date: Fri, 5 Jul 2019 19:53:29 -0500
Subject: [PATCH 3/5] Re-blacken _utils.py

---
 ffmpeg/_utils.py | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/ffmpeg/_utils.py b/ffmpeg/_utils.py
index 1f61d4e..b871b2a 100644
--- a/ffmpeg/_utils.py
+++ b/ffmpeg/_utils.py
@@ -32,8 +32,11 @@ def __new__(cls, name, this_bases, d):
 
 
 if sys.version_info.major >= 3:
+
     class basestring(with_metaclass(BaseBaseString)):
         pass
+
+
 else:
     basestring = basestring
 

From 8f3cb6cada976f81b7bc7ac350e578b32bff987b Mon Sep 17 00:00:00 2001
From: Karl Kroening <karlk@kralnet.us>
Date: Fri, 5 Jul 2019 19:54:31 -0500
Subject: [PATCH 4/5] Add python 3.7 test configuration; drop future import in
 tox.ini

---
 .travis.yml | 3 +++
 tox.ini     | 3 +--
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index c58274b..e51f420 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -20,6 +20,9 @@ matrix:
     - python: 3.6
       env:
       - TOX_ENV=py36
+    - python: 3.7
+      env:
+      - TOX_ENV=py37
     - python: pypy
       env:
       - TOX_ENV=pypy
diff --git a/tox.ini b/tox.ini
index f86ec4b..397d41a 100644
--- a/tox.ini
+++ b/tox.ini
@@ -4,11 +4,10 @@
 # and then run "tox" from this directory.
 
 [tox]
-envlist = py27, py34, py35, py36, pypy
+envlist = py27, py34, py35, py36, py37, pypy
 
 [testenv]
 commands = py.test -vv
 deps =
-    future
     pytest
     pytest-mock

From c580ae355bb18b3d3d0aaee0e9220f34441995e0 Mon Sep 17 00:00:00 2001
From: Karl Kroening <karlk@kralnet.us>
Date: Fri, 5 Jul 2019 20:01:19 -0500
Subject: [PATCH 5/5] Try using Xenial in Travis

---
 .travis.yml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/.travis.yml b/.travis.yml
index e51f420..9859d03 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,4 +1,5 @@
 language: python
+dist: xenial
 before_install:
   - >
     [ -f ffmpeg-release/ffmpeg ] || (
openSUSE Build Service is sponsored by