From 6364bd88350a6a96b5fcf1a978918d6f5881b863 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Thu, 12 Oct 2017 17:49:59 +0200 Subject: [PATCH] Fix FTBFS Signed-off-by: Igor Gnatenko --- ...ove-outdated-comment-about-Click-3.0.patch | 24 +++++++++ ...ytest-option-to-not-capture-warnings.patch | 21 ++++++++ 0003-Catch-and-test-pytest-warning.patch | 54 +++++++++++++++++++ python-click.spec | 12 ++++- 4 files changed, 109 insertions(+), 2 deletions(-) create mode 100644 0001-Remove-outdated-comment-about-Click-3.0.patch create mode 100644 0002-Add-pytest-option-to-not-capture-warnings.patch create mode 100644 0003-Catch-and-test-pytest-warning.patch diff --git a/0001-Remove-outdated-comment-about-Click-3.0.patch b/0001-Remove-outdated-comment-about-Click-3.0.patch new file mode 100644 index 0000000..bd5bdd9 --- /dev/null +++ b/0001-Remove-outdated-comment-about-Click-3.0.patch @@ -0,0 +1,24 @@ +From 4fa671b4afdde8e103a03b39dcdc66e1a10a16fa Mon Sep 17 00:00:00 2001 +From: Adam Dangoor +Date: Mon, 31 Jul 2017 17:58:41 +0100 +Subject: [PATCH 1/3] Remove outdated comment about Click 3.0 + +--- + click/core.py | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/click/core.py b/click/core.py +index 7456451..18fa9a5 100644 +--- a/click/core.py ++++ b/click/core.py +@@ -68,7 +68,6 @@ def invoke_param_callback(callback, ctx, param, value): + args = getattr(code, 'co_argcount', 3) + + if args < 3: +- # This will become a warning in Click 3.0: + from warnings import warn + warn(Warning('Invoked legacy parameter callback "%s". The new ' + 'signature for such callbacks starting with ' +-- +2.14.2 + diff --git a/0002-Add-pytest-option-to-not-capture-warnings.patch b/0002-Add-pytest-option-to-not-capture-warnings.patch new file mode 100644 index 0000000..ed34f7b --- /dev/null +++ b/0002-Add-pytest-option-to-not-capture-warnings.patch @@ -0,0 +1,21 @@ +From 6e7951c511b8316a73d9a8d9c4cc130becd99e93 Mon Sep 17 00:00:00 2001 +From: Adam Dangoor +Date: Mon, 31 Jul 2017 18:06:20 +0100 +Subject: [PATCH 2/3] Add pytest option to not capture warnings + +--- + pytest.ini | 2 ++ + 1 file changed, 2 insertions(+) + create mode 100644 pytest.ini + +diff --git a/pytest.ini b/pytest.ini +new file mode 100644 +index 0000000..1ceab94 +--- /dev/null ++++ b/pytest.ini +@@ -0,0 +1,2 @@ ++[pytest] ++addopts = -p no:warnings +-- +2.14.2 + diff --git a/0003-Catch-and-test-pytest-warning.patch b/0003-Catch-and-test-pytest-warning.patch new file mode 100644 index 0000000..ab8609b --- /dev/null +++ b/0003-Catch-and-test-pytest-warning.patch @@ -0,0 +1,54 @@ +From e6fb0fe8bc75e7931fe86e95442eec09b49caee7 Mon Sep 17 00:00:00 2001 +From: Adam Dangoor +Date: Mon, 31 Jul 2017 19:45:24 +0100 +Subject: [PATCH 3/3] Catch and test pytest warning + +--- + pytest.ini | 2 -- + tests/test_compat.py | 15 +++++++++++++-- + 2 files changed, 13 insertions(+), 4 deletions(-) + delete mode 100644 pytest.ini + +diff --git a/pytest.ini b/pytest.ini +deleted file mode 100644 +index 1ceab94..0000000 +--- a/pytest.ini ++++ /dev/null +@@ -1,2 +0,0 @@ +-[pytest] +-addopts = -p no:warnings +diff --git a/tests/test_compat.py b/tests/test_compat.py +index e4ecdc8..d86110a 100644 +--- a/tests/test_compat.py ++++ b/tests/test_compat.py +@@ -1,3 +1,5 @@ ++import pytest ++ + import click + + +@@ -11,10 +13,19 @@ if click.__version__ >= '3.0': + def cli(foo): + click.echo(foo) + +- result = runner.invoke(cli, ['--foo', 'wat']) ++ with pytest.warns(Warning) as records: ++ result = runner.invoke(cli, ['--foo', 'wat']) ++ ++ [warning_record] = records ++ warning_message = str(warning_record.message) ++ assert 'Invoked legacy parameter callback' in warning_message + assert result.exit_code == 0 ++ # Depending on the pytest version, the warning message may be ++ # in `result.output`. ++ # ++ # In pytest version 3.1 pytest started capturing warnings by default. ++ # See https://docs.pytest.org/en/latest/warnings.html#warnings-capture. + assert 'WAT' in result.output +- assert 'Invoked legacy parameter callback' in result.output + + + def test_bash_func_name(): +-- +2.14.2 + diff --git a/python-click.spec b/python-click.spec index ab23896..ad110f0 100644 --- a/python-click.spec +++ b/python-click.spec @@ -2,12 +2,17 @@ Name: python-%{pypi_name} Version: 6.7 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Simple wrapper around optparse for powerful command line utilities License: BSD URL: https://github.com/mitsuhiko/click Source0: %{url}/archive/%{version}/%{pypi_name}-%{version}.tar.gz +# https://bugzilla.redhat.com/show_bug.cgi?id=1500962 +# https://github.com/pallets/click/pull/838 +Patch0: 0001-Remove-outdated-comment-about-Click-3.0.patch +Patch1: 0002-Add-pytest-option-to-not-capture-warnings.patch +Patch2: 0003-Catch-and-test-pytest-warning.patch BuildArch: noarch @@ -42,7 +47,7 @@ BuildRequires: python3-pytest Python 3 version. %prep -%autosetup -n %{pypi_name}-%{version} +%autosetup -n %{pypi_name}-%{version} -p1 %build %py2_build @@ -71,6 +76,9 @@ py.test-%{python3_version} tests --tb=long --verbose %{python3_sitelib}/%{pypi_name}/ %changelog +* Thu Oct 12 2017 Igor Gnatenko - 6.7-5 +- Fix FTBFS + * Thu Jul 27 2017 Fedora Release Engineering - 6.7-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild