diff --git a/SOURCES/await.patch b/SOURCES/await.patch
new file mode 100644
index 0000000..82e127d
--- /dev/null
+++ b/SOURCES/await.patch
@@ -0,0 +1,44 @@
+diff -ru txaio-2.10.0/test/test_gather.py txaio-2.10.0_patched/test/test_gather.py
+--- txaio-2.10.0/test/test_gather.py 2018-03-02 08:04:45.000000000 +0100
++++ txaio-2.10.0_patched/test/test_gather.py 2018-08-01 13:03:40.237465405 +0200
+@@ -26,7 +26,7 @@
+
+ import txaio
+
+-from util import await
++from util import await_completion
+
+
+ def test_gather_two(framework):
+@@ -61,7 +61,7 @@
+ txaio.add_callbacks(f2, done, error)
+
+ for f in [f0, f1, f2]:
+- await(f)
++ await_completion(f)
+
+ assert len(results) == 1
+ assert len(errors) == 0
+@@ -99,7 +99,7 @@
+ # out of "run_until_complete()" as well; fix util.py?
+ for f in [f0, f1, f2]:
+ try:
+- await(f)
++ await_completion(f)
+ except Exception:
+ pass
+
+Only in txaio-2.10.0_patched/test: .test_gather.py.swp
+diff -ru txaio-2.10.0/test/util.py txaio-2.10.0_patched/test/util.py
+--- txaio-2.10.0/test/util.py 2017-04-15 16:17:17.000000000 +0200
++++ txaio-2.10.0_patched/test/util.py 2018-08-01 13:02:30.099152902 +0200
+@@ -57,7 +57,7 @@
+ asyncio.gather(*asyncio.Task.all_tasks())
+
+
+-def await(future):
++def await_completion(future):
+ '''
+ Essentially just a way to call "run_until_complete" that becomes a
+ no-op if we're using Twisted.
+Only in txaio-2.10.0_patched/test: .util.py.swp
diff --git a/SOURCES/fix-doc-sphinx-1.4.8.patch b/SOURCES/fix-doc-sphinx-1.4.8.patch
new file mode 100644
index 0000000..81566a8
--- /dev/null
+++ b/SOURCES/fix-doc-sphinx-1.4.8.patch
@@ -0,0 +1,41 @@
+diff --git i/README.rst w/README.rst
+index f9084df..52e9769 100644
+--- i/README.rst
++++ w/README.rst
+@@ -1,10 +1,6 @@
+ txaio
+ =====
+
+-| |Version| |Downloads| |Build Status| |Coverage| |Docs|
+-
+---------------
+-
+ **txaio** is a helper library for writing code that runs unmodified on
+ both `Twisted `_ and `asyncio `_ / `Trollius `_.
+
+@@ -58,25 +54,3 @@ Code like the following can then run on *either* system:
+ # ...
+ txaio.resolve(f0, "value")
+ txaio.reject(f1, RuntimeError("it failed"))
+-
+-
+-.. |Version| image:: https://img.shields.io/pypi/v/txaio.svg
+- :target: https://pypi.python.org/pypi/txaio
+-
+-.. |Downloads| image:: https://img.shields.io/pypi/dm/txaio.svg
+- :target: https://pypi.python.org/pypi/txaio
+-
+-.. |GitHub Stars| image:: https://img.shields.io/github/stars/crossbario/txaio.svg?style=social&label=Star
+- :target: https://github.com/crossbario/txaio
+-
+-.. |Master Branch| image:: https://img.shields.io/badge/branch-master-orange.svg
+- :target: https://travis-ci.org/crossbario/txaio.svg?branch=master
+-
+-.. |Build Status| image:: https://travis-ci.org/crossbario/txaio.svg?branch=master
+- :target: https://travis-ci.org/crossbario/txaio
+-
+-.. |Coverage| image:: https://img.shields.io/codecov/c/github/crossbario/txaio/master.svg
+- :target: https://codecov.io/github/crossbario/txaio
+-
+-.. |Docs| image:: https://img.shields.io/badge/docs-latest-brightgreen.svg?style=flat
+- :target: http://txaio.readthedocs.org/en/latest/
diff --git a/SOURCES/fix-pytest3.patch b/SOURCES/fix-pytest3.patch
new file mode 100644
index 0000000..4e8cb3a
--- /dev/null
+++ b/SOURCES/fix-pytest3.patch
@@ -0,0 +1,21 @@
+From e48a9096c90686245d2e00f7957fd2058eb8101d Mon Sep 17 00:00:00 2001
+From: Julien Enselme
+Date: Sat, 1 Oct 2016 20:41:59 +0200
+Subject: [PATCH] Fix tests to run on pytest 3 and pytest 2
+
+---
+ test/conftest.py | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/test/conftest.py b/test/conftest.py
+index a79a27f..4a225c8 100644
+--- a/test/conftest.py
++++ b/test/conftest.py
+@@ -1,7 +1,5 @@
+ import pytest
+
+-pytest_plugins = ""
+-
+ # here's a little voodoo -- any generic tests depend on this 'framework'
+ # fixture, which (sneakily using internal-only APIs) ensures that each
+ # tests runs twice: once enabled for Twisted and once enabled for
diff --git a/SOURCES/python-txaio-skip-packaging-tests.patch b/SOURCES/python-txaio-skip-packaging-tests.patch
new file mode 100644
index 0000000..b495645
--- /dev/null
+++ b/SOURCES/python-txaio-skip-packaging-tests.patch
@@ -0,0 +1,10 @@
+--- test/test_packaging.py 2015-10-17 19:09:01.342981497 +0200
++++ test/test_packaging.py 2015-10-17 19:09:37.874402253 +0200
+@@ -34,6 +34,7 @@
+ import txaio
+
+
++@pytest.mark.skipif(True, reason='Not needed for RPM build')
+ def test_sdist():
+ if not hasattr(subprocess, 'check_output'):
+ pytest.skip()
diff --git a/SOURCES/skip-failing-test-python3.6.patch b/SOURCES/skip-failing-test-python3.6.patch
new file mode 100644
index 0000000..f466919
--- /dev/null
+++ b/SOURCES/skip-failing-test-python3.6.patch
@@ -0,0 +1,20 @@
+diff --git i/test/test_callback.py w/test/test_callback.py
+index 08d31e3..1bfc748 100644
+--- i/test/test_callback.py
++++ w/test/test_callback.py
+@@ -24,6 +24,7 @@
+ #
+ ###############################################################################
+
++import pytest
+ import txaio
+
+ from util import run_once
+@@ -59,6 +60,7 @@ def test_callback(framework):
+ assert results[0] == "it worked"
+
+
++@pytest.mark.skip(reason='Fails on 3.6')
+ def test_chained_callback(framework):
+ """
+ Chain two callbacks where the first one alters the value.