#7 Add EPEL8 version based on rawhide
Merged 2 years ago by mikelo2. Opened 2 years ago by mikelo2.
rpms/ mikelo2/httpie epel8-new  into  epel8

Remove help2man conditional
Rick Elrod • 4 years ago  
Bump to 1.0.3
Rick Elrod • 4 years ago  
add missing Obsoletes
Ricky Elrod • 7 years ago  
latest version
Ricky Elrod • 7 years ago  
fix my name
Ricky Elrod • 7 years ago  
add obsoletes for rhbz#1329226
Ricky Elrod • 7 years ago  
Update to latest upstream release
Ricky Elrod • 9 years ago  
Latest upstream release
Ricky Elrod • 10 years ago  
new sources too
Ricky Elrod • 10 years ago  
Fix changelog from merge conflicts
Ricky Elrod • 10 years ago  
Latest upstream release.
Ricky Elrod • 10 years ago  
Only build manpages for Fedora
Ricky Elrod • 10 years ago  
Upstream 0.6.0
Ricky Elrod • 10 years ago  
Bump release.
Ricky Elrod • 11 years ago  
Fix the right date this time.
Ricky Elrod • 11 years ago  
Initial import (#927457)
Ricky Elrod • 11 years ago  
file modified
+11
@@ -0,0 +1,11 @@ 

+ /httpie-0.4.1.tar.gz

+ /httpie-0.5.0.tar.gz

+ /httpie-0.6.0.tar.gz

+ /httpie-0.7.2.tar.gz

+ /httpie-0.8.0.tar.gz

+ /httpie-0.9.2.tar.gz

+ /httpie-0.9.3.tar.gz

+ /httpie-0.9.4.tar.gz

+ /httpie-1.0.3.tar.gz

+ /httpie-2.3.0.tar.gz

+ /httpie-2.4.0.tar.gz

file added
+22
@@ -0,0 +1,22 @@ 

+ From 5f9b44711447a1ec0bc1593f67a31fe03956fd8f Mon Sep 17 00:00:00 2001

+ From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>

+ Date: Tue, 30 Mar 2021 22:39:29 +0200

+ Subject: [PATCH] Explicitly require setuptools, httpie/plugins/manager.py

+  imports pkg_resources

+ 

+ ---

+  setup.py | 1 +

+  1 file changed, 1 insertion(+)

+ 

+ diff --git a/setup.py b/setup.py

+ index 5204cadf9..1777858da 100644

+ --- a/setup.py

+ +++ b/setup.py

+ @@ -42,6 +42,7 @@ def run_tests(self):

+      'requests[socks]>=2.22.0',

+      'Pygments>=2.5.2',

+      'requests-toolbelt>=0.9.1',

+ +    'setuptools',

+  ]

+  install_requires_win_only = [

+      'colorama>=0.2.4',

file added
+123
@@ -0,0 +1,123 @@ 

+ From d374aeb1f9a3b3a11d73d2ef1eaee1c91c2f297f Mon Sep 17 00:00:00 2001

+ From: =?UTF-8?q?Micka=C3=ABl=20Schoentgen?= <mschoentgen@nuxeo.com>

+ Date: Fri, 30 Apr 2021 13:56:26 +0200

+ Subject: [PATCH] Replace usage of mock with unittest.mock

+ 

+ Since Python 3, the mock dependency is no more required as

+ it is already part of the unittest module.

+ ---

+  requirements-dev.txt       | 1 -

+  setup.py                   | 1 -

+  tests/test_auth.py         | 2 +-

+  tests/test_auth_plugins.py | 2 +-

+  tests/test_downloads.py    | 2 +-

+  tests/test_errors.py       | 2 +-

+  tests/test_exit_status.py  | 2 +-

+  tests/test_output.py       | 2 +-

+  tests/test_sessions.py     | 2 +-

+  9 files changed, 7 insertions(+), 9 deletions(-)

+ 

+ diff --git a/requirements-dev.txt b/requirements-dev.txt

+ index 8e755e73c..cf5f228a3 100644

+ --- a/requirements-dev.txt

+ +++ b/requirements-dev.txt

+ @@ -1,4 +1,3 @@

+ -mock

+  pytest

+  pytest-cov

+  pytest-httpbin>=0.0.6

+ diff --git a/setup.py b/setup.py

+ index 1777858da..e3ee9e775 100644

+ --- a/setup.py

+ +++ b/setup.py

+ @@ -34,7 +34,6 @@ def run_tests(self):

+  tests_require = [

+      'pytest-httpbin',

+      'pytest',

+ -    'mock',

+  ]

+  

+  

+ diff --git a/tests/test_auth.py b/tests/test_auth.py

+ index e187bcead..ad63696dc 100644

+ --- a/tests/test_auth.py

+ +++ b/tests/test_auth.py

+ @@ -1,5 +1,5 @@

+  """HTTP authentication-related tests."""

+ -import mock

+ +from unittest import mock

+  import pytest

+  

+  from httpie.plugins.builtin import HTTPBasicAuth

+ diff --git a/tests/test_auth_plugins.py b/tests/test_auth_plugins.py

+ index b21d813ed..cf4919737 100644

+ --- a/tests/test_auth_plugins.py

+ +++ b/tests/test_auth_plugins.py

+ @@ -1,4 +1,4 @@

+ -from mock import mock

+ +from unittest import mock

+  

+  from httpie.cli.constants import SEPARATOR_CREDENTIALS

+  from httpie.plugins import AuthPlugin

+ diff --git a/tests/test_downloads.py b/tests/test_downloads.py

+ index 969021d9d..4b1d88053 100644

+ --- a/tests/test_downloads.py

+ +++ b/tests/test_downloads.py

+ @@ -1,10 +1,10 @@

+  import os

+  import tempfile

+  import time

+ +from unittest import mock

+  from urllib.request import urlopen

+  

+  import pytest

+ -import mock

+  from requests.structures import CaseInsensitiveDict

+  

+  from httpie.downloads import (

+ diff --git a/tests/test_errors.py b/tests/test_errors.py

+ index ec6ca5a4e..342506092 100644

+ --- a/tests/test_errors.py

+ +++ b/tests/test_errors.py

+ @@ -1,4 +1,4 @@

+ -import mock

+ +from unittest import mock

+  from pytest import raises

+  from requests import Request

+  from requests.exceptions import ConnectionError

+ diff --git a/tests/test_exit_status.py b/tests/test_exit_status.py

+ index abc935187..57e146338 100644

+ --- a/tests/test_exit_status.py

+ +++ b/tests/test_exit_status.py

+ @@ -1,4 +1,4 @@

+ -import mock

+ +from unittest import mock

+  

+  from httpie.status import ExitStatus

+  from utils import MockEnvironment, http, HTTP_OK

+ diff --git a/tests/test_output.py b/tests/test_output.py

+ index d5b15e469..ef340c2a2 100644

+ --- a/tests/test_output.py

+ +++ b/tests/test_output.py

+ @@ -1,7 +1,7 @@

+  import argparse

+  from pathlib import Path

+ +from unittest import mock

+  

+ -import mock

+  import json

+  import os

+  import tempfile

+ diff --git a/tests/test_sessions.py b/tests/test_sessions.py

+ index f52c477c2..829a9818b 100644

+ --- a/tests/test_sessions.py

+ +++ b/tests/test_sessions.py

+ @@ -3,7 +3,7 @@

+  import os

+  import shutil

+  from datetime import datetime

+ -from mock import mock

+ +from unittest import mock

+  from tempfile import gettempdir

+  

+  import pytest

file added
+28
@@ -0,0 +1,28 @@ 

+ From c7c8c3d06f43ed508ae19e2820c3f3ffd4e0b387 Mon Sep 17 00:00:00 2001

+ From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>

+ Date: Thu, 27 May 2021 16:55:57 +0200

+ Subject: [PATCH] pytest: Add hidden files to norecursedirs

+ 

+ The default value already contains this,

+ but when setting a custom one, it was overridden.

+ 

+ In Fedora, we build the package in `.pyproject-builddir` and not ignoring it confuses pytest:

+ 

+     _pytest.pathlib.ImportPathMismatchError: ('httpie.__main__', '/builddir/build/BUILD/httpie-2.4.0/.pyproject-builddir/pip-req-build-aedma65c/build/lib/httpie/__main__.py', PosixPath('/builddir/build/BUILD/httpie-2.4.0/.pyproject-builddir/pip-req-build-aedma65c/httpie/__main__.py'))

+ ---

+  setup.cfg | 2 +-

+  1 file changed, 1 insertion(+), 1 deletion(-)

+ 

+ diff --git a/setup.cfg b/setup.cfg

+ index eda7a527..5640d04f 100644

+ --- a/setup.cfg

+ +++ b/setup.cfg

+ @@ -7,7 +7,7 @@

+  

+  [tool:pytest]

+  # <https://docs.pytest.org/en/latest/customize.html>

+ -norecursedirs = tests/fixtures

+ +norecursedirs = tests/fixtures .*

+  addopts = --tb=native --doctest-modules

+  

+  

file added
+182
@@ -0,0 +1,182 @@ 

+ From 218062ce064f51ec5aa52ce7b178bc9b3446ae98 Mon Sep 17 00:00:00 2001

+ From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>

+ Date: Thu, 27 May 2021 17:26:01 +0200

+ Subject: [PATCH] Skip http://pie.dev tests when offline

+ 

+ ---

+  tests/conftest.py       | 19 +++++++++++++++++++

+  tests/test_tokens.py    |  6 +++---

+  tests/test_uploads.py   | 26 +++++++++++++-------------

+  tests/utils/__init__.py |  6 ------

+  4 files changed, 35 insertions(+), 22 deletions(-)

+ 

+ diff --git a/tests/conftest.py b/tests/conftest.py

+ index ea08746..f489328 100644

+ --- a/tests/conftest.py

+ +++ b/tests/conftest.py

+ @@ -1,3 +1,4 @@

+ +import socket

+  import pytest

+  from pytest_httpbin import certs

+  

+ @@ -22,3 +23,22 @@ def httpbin_secure_untrusted(monkeypatch, httpbin_secure):

+      """

+      monkeypatch.delenv('REQUESTS_CA_BUNDLE')

+      return httpbin_secure

+ +

+ +

+ +# pytest-httpbin currently does not support chunked requests:

+ +# <https://github.com/kevin1024/pytest-httpbin/issues/33>

+ +# <https://github.com/kevin1024/pytest-httpbin/issues/28>

+ +@pytest.fixture(scope='session')

+ +def _httpbin_with_chunked_support_available():

+ +    try:

+ +        socket.gethostbyname('pie.dev')

+ +        return True

+ +    except OSError:

+ +        return False

+ +

+ +

+ +@pytest.fixture(scope='function')

+ +def httpbin_with_chunked_support(_httpbin_with_chunked_support_available):

+ +    if _httpbin_with_chunked_support_available:

+ +        return 'http://pie.dev'

+ +    pytest.skip('pie.dev not resolvable')

+ diff --git a/tests/test_tokens.py b/tests/test_tokens.py

+ index 65e7248..874653a 100644

+ --- a/tests/test_tokens.py

+ +++ b/tests/test_tokens.py

+ @@ -10,7 +10,7 @@ TODO: cover more scenarios

+  

+  """

+  from tests.utils.matching import assert_output_matches, Expect

+ -from utils import http, HTTP_OK, MockEnvironment, HTTPBIN_WITH_CHUNKED_SUPPORT

+ +from utils import http, HTTP_OK, MockEnvironment

+  

+  

+  RAW_REQUEST = [

+ @@ -129,8 +129,8 @@ def test_redirected_headers_multipart_no_separator():

+      assert_output_matches(r, RAW_REQUEST)

+  

+  

+ -def test_verbose_chunked():

+ -    r = http('--verbose', '--chunked', HTTPBIN_WITH_CHUNKED_SUPPORT + '/post', 'hello=world')

+ +def test_verbose_chunked(httpbin_with_chunked_support):

+ +    r = http('--verbose', '--chunked', httpbin_with_chunked_support + '/post', 'hello=world')

+      assert HTTP_OK in r

+      assert 'Transfer-Encoding: chunked' in r

+      assert_output_matches(r, TERMINAL_EXCHANGE)

+ diff --git a/tests/test_uploads.py b/tests/test_uploads.py

+ index 05fb200..24a8459 100644

+ --- a/tests/test_uploads.py

+ +++ b/tests/test_uploads.py

+ @@ -6,17 +6,17 @@ from httpie.cli.exceptions import ParseError

+  from httpie.client import FORM_CONTENT_TYPE

+  from httpie.status import ExitStatus

+  from utils import (

+ -    HTTPBIN_WITH_CHUNKED_SUPPORT, MockEnvironment, StdinBytesIO, http,

+ +    MockEnvironment, StdinBytesIO, http,

+      HTTP_OK,

+  )

+  from fixtures import FILE_PATH_ARG, FILE_PATH, FILE_CONTENT

+  

+  

+ -def test_chunked_json():

+ +def test_chunked_json(httpbin_with_chunked_support):

+      r = http(

+          '--verbose',

+          '--chunked',

+ -        HTTPBIN_WITH_CHUNKED_SUPPORT + '/post',

+ +        httpbin_with_chunked_support + '/post',

+          'hello=world',

+      )

+      assert HTTP_OK in r

+ @@ -24,12 +24,12 @@ def test_chunked_json():

+      assert r.count('hello') == 3

+  

+  

+ -def test_chunked_form():

+ +def test_chunked_form(httpbin_with_chunked_support):

+      r = http(

+          '--verbose',

+          '--chunked',

+          '--form',

+ -        HTTPBIN_WITH_CHUNKED_SUPPORT + '/post',

+ +        httpbin_with_chunked_support + '/post',

+          'hello=world',

+      )

+      assert HTTP_OK in r

+ @@ -37,11 +37,11 @@ def test_chunked_form():

+      assert r.count('hello') == 2

+  

+  

+ -def test_chunked_stdin():

+ +def test_chunked_stdin(httpbin_with_chunked_support):

+      r = http(

+          '--verbose',

+          '--chunked',

+ -        HTTPBIN_WITH_CHUNKED_SUPPORT + '/post',

+ +        httpbin_with_chunked_support + '/post',

+          env=MockEnvironment(

+              stdin=StdinBytesIO(FILE_PATH.read_bytes()),

+              stdin_isatty=False,

+ @@ -52,12 +52,12 @@ def test_chunked_stdin():

+      assert r.count(FILE_CONTENT) == 2

+  

+  

+ -def test_chunked_stdin_multiple_chunks():

+ +def test_chunked_stdin_multiple_chunks(httpbin_with_chunked_support):

+      stdin_bytes = FILE_PATH.read_bytes() + b'\n' + FILE_PATH.read_bytes()

+      r = http(

+          '--verbose',

+          '--chunked',

+ -        HTTPBIN_WITH_CHUNKED_SUPPORT + '/post',

+ +        httpbin_with_chunked_support + '/post',

+          env=MockEnvironment(

+              stdin=StdinBytesIO(stdin_bytes),

+              stdin_isatty=False,

+ @@ -182,12 +182,12 @@ class TestMultipartFormDataFileUpload:

+          assert f'multipart/magic; boundary={boundary_in_header}' in r

+          assert r.count(boundary_in_body) == 3

+  

+ -    def test_multipart_chunked(self, httpbin):

+ +    def test_multipart_chunked(self, httpbin_with_chunked_support):

+          r = http(

+              '--verbose',

+              '--multipart',

+              '--chunked',

+ -            HTTPBIN_WITH_CHUNKED_SUPPORT + '/post',

+ +            httpbin_with_chunked_support + '/post',

+              'AAA=AAA',

+          )

+          assert 'Transfer-Encoding: chunked' in r

+ @@ -231,10 +231,10 @@ class TestRequestBodyFromFilePath:

+          assert r.count(FILE_CONTENT) == 2

+          assert '"Content-Type": "text/plain"' in r

+  

+ -    def test_request_body_from_file_by_path_chunked(self, httpbin):

+ +    def test_request_body_from_file_by_path_chunked(self, httpbin_with_chunked_support):

+          r = http(

+              '--verbose', '--chunked',

+ -            HTTPBIN_WITH_CHUNKED_SUPPORT + '/post',

+ +            httpbin_with_chunked_support + '/post',

+              '@' + FILE_PATH_ARG,

+          )

+          assert HTTP_OK in r

+ diff --git a/tests/utils/__init__.py b/tests/utils/__init__.py

+ index 575f1e2..a30c3ca 100644

+ --- a/tests/utils/__init__.py

+ +++ b/tests/utils/__init__.py

+ @@ -16,12 +16,6 @@ from httpie.context import Environment

+  from httpie.core import main

+  

+  

+ -# pytest-httpbin currently does not support chunked requests:

+ -# <https://github.com/kevin1024/pytest-httpbin/issues/33>

+ -# <https://github.com/kevin1024/pytest-httpbin/issues/28>

+ -HTTPBIN_WITH_CHUNKED_SUPPORT = 'http://pie.dev'

+ -

+ -

+  TESTS_ROOT = Path(__file__).parent.parent

+  CRLF = '\r\n'

+  COLOR = '\x1b['

file added
+51
@@ -0,0 +1,51 @@ 

+ From 7a8d07bdc4ecdb624e6dd880b70ca8c0130bc3fe Mon Sep 17 00:00:00 2001

+ From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>

+ Date: Thu, 27 May 2021 19:48:13 +0200

+ Subject: [PATCH] Adapt doctest of tests.utils.http to work on Python 3.10 as

+  well

+ 

+ https://docs.python.org/3.10/whatsnew/3.10.html#enum

+ 

+ Python 3.10 changed the repr of enum members, and the doctest of tests.utils.http failed.

+ Exact reprs are unfortunately not considered stable API between Python releases:

+ 

+     =================================== FAILURES ===================================

+     __________________________ [doctest] tests.utils.http __________________________

+     209

+     210     Example:

+     211

+     212     $ http --auth=user:password GET pie.dev/basic-auth/user/password

+     213

+     214         >>> httpbin = getfixture('httpbin')

+     215         >>> r = http('-a', 'user:pw', httpbin.url + '/basic-auth/user/pw')

+     216         >>> type(r) == StrCLIResponse

+     217         True

+     218         >>> r.exit_status

+     Expected:

+         <ExitStatus.SUCCESS: 0>

+     Got:

+         ExitStatus.SUCCESS

+ 

+ A simple replacement of the expected output however breaks the doctest on Python 3.9.

+ 

+ This is the best solution I could think of

+ that keeps the docstring readable and doctest working in Pythons both old and new.

+ ---

+  tests/utils/__init__.py | 4 ++--

+  1 file changed, 2 insertions(+), 2 deletions(-)

+ 

+ diff --git a/tests/utils/__init__.py b/tests/utils/__init__.py

+ index 2cf0ce75..6e89d274 100644

+ --- a/tests/utils/__init__.py

+ +++ b/tests/utils/__init__.py

+ @@ -215,8 +215,8 @@ def http(

+          >>> r = http('-a', 'user:pw', httpbin.url + '/basic-auth/user/pw')

+          >>> type(r) == StrCLIResponse

+          True

+ -        >>> r.exit_status

+ -        <ExitStatus.SUCCESS: 0>

+ +        >>> r.exit_status is ExitStatus.SUCCESS

+ +        True

+          >>> r.stderr

+          ''

+          >>> 'HTTP/1.1 200 OK' in r

file added
+269
@@ -0,0 +1,269 @@ 

+ Name:           httpie

+ Version:        2.4.0

+ Release:        4%{?dist}

+ Summary:        A Curl-like tool for humans

+ 

+ License:        BSD

+ URL:            https://httpie.org/

+ Source0:        https://github.com/httpie/httpie/archive/%{version}/%{name}-%{version}.tar.gz

+ 

+ # Explicitly require setuptools, httpie/plugins/manager.py imports pkg_resources

+ # Merged upstream

+ Patch1:         https://github.com/httpie/httpie/pull/1049.patch

+ 

+ # Replace usage of mock with unittest.mock

+ # Merged upstream

+ Patch2:         https://github.com/httpie/httpie/pull/1054.patch

+ 

+ # pytest: Add hidden files to norecursedirs

+ # Merged upstream

+ Patch3:         https://github.com/httpie/httpie/pull/1071.patch

+ 

+ # Skip http://pie.dev tests when offline

+ # Rebased slightly https://github.com/httpie/httpie/pull/1072

+ # Merged upstream

+ Patch4:         1072.patch

+ 

+ # Adapt doctest of tests.utils.http to work on Python 3.10 as well

+ # Merged upstream

+ Patch5:         https://github.com/httpie/httpie/pull/1075.patch

+ 

+ BuildArch:      noarch

+ 

+ BuildRequires:  python3-devel

+ BuildRequires:  python3-setuptools

+ BuildRequires:  python3-pygments

+ BuildRequires:  python3-requests

+ BuildRequires:  python3-requests-toolbelt

+ BuildRequires:  sed

+ BuildRequires:  help2man

+ 

+ %description

+ HTTPie is a CLI HTTP utility built out of frustration with existing tools. The

+ goal is to make CLI interaction with HTTP-based services as human-friendly as

+ possible.

+ 

+ HTTPie does so by providing an http command that allows for issuing arbitrary

+ HTTP requests using a simple and natural syntax and displaying colorized

+ responses.

+ 

+ 

+ %prep

+ %autosetup -p1

+ sed -i '/#!\/usr\/bin\/env/d' httpie/__main__.py

+ 

+ # RHEL8 ships version 2.2, which works fine here.

+ sed -i 's/Pygments>=2.5.2/Pygments>=2.2.0/' setup.py

+ 

+ # RHEL8 ships version 2.22.0 which works fine here.

+ sed -i 's/requests\[socks\]>=2.22.0/requests>=2.20.0/' setup.py

+ 

+ 

+ %build

+ %py3_build

+ 

+ 

+ %install

+ %py3_install

+ 

+ # Bash completion

+ mkdir -p %{buildroot}%{_datadir}/bash-completion/completions

+ cp -a extras/httpie-completion.bash %{buildroot}%{_datadir}/bash-completion/completions/http

+ ln -s ./http %{buildroot}%{_datadir}/bash-completion/completions/https

+ 

+ # Fish completion

+ mkdir -p %{buildroot}%{_datadir}/fish/vendor_completions.d/

+ cp -a extras/httpie-completion.fish %{buildroot}%{_datadir}/fish/vendor_completions.d/http.fish

+ ln -s ./http.fish %{buildroot}%{_datadir}/fish/vendor_completions.d/https.fish

+ 

+ 

+ # Generate man pages for everything

+ export PYTHONPATH=%{buildroot}%{python3_sitelib}

+ mkdir -p %{buildroot}%{_mandir}/man1

+ help2man %{buildroot}%{_bindir}/http > %{buildroot}%{_mandir}/man1/http.1

+ help2man %{buildroot}%{_bindir}/https > %{buildroot}%{_mandir}/man1/https.1

+ 

+ # pytest-httpbin is not available in EPEL8, can't run checks

+ #%%check

+ #%%pytest -v

+ 

+ 

+ 

+ %files

+ %doc README.rst

+ %license LICENSE

+ %{_bindir}/http

+ %{_bindir}/https

+ %{_mandir}/man1/http.1*

+ %{_mandir}/man1/https.1*

+ %{python3_sitelib}/%{name}/

+ %{python3_sitelib}/%{name}-%{version}*

+ # we co-own the entire directory structures for bash/fish completion to avoid a dependency

+ %{_datadir}/bash-completion/

+ %{_datadir}/fish/

+ 

+ 

+ %changelog

+ * Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.0-4

+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild

+ 

+ * Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 2.4.0-3

+ - Rebuilt for Python 3.10

+ 

+ * Thu May 27 2021 Miro Hrončok <mhroncok@redhat.com> - 2.4.0-2

+ - Add Bash and Fish completion

+ - Fixes rhbz#1834441

+ - Run tests on build time

+ 

+ * Wed Mar 24 2021 Mikel Olasagasti Uranga <mikel@olasagasti.info> - 2.4.0-1

+ - Update to 2.4.0

+ - Use pypi_source macro

+ 

+ * Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.0-3

+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild

+ 

+ * Thu Jan 21 2021 Nils Philippsen <nils@tiptoe.de> - 2.3.0-2

+ - use macros for Python dependencies

+ - add missing Python dependencies needed for running help2man

+ - remove manual Python dependencies

+ - discard stderr when running help2man

+ 

+ * Thu Dec 24 2020 Nils Philippsen <nils@tiptoe.de> - 2.3.0-1

+ - version 2.3.0

+ - Python 2 is no more

+ - use %%autosetup and Python build macros

+ - remove EL7-isms

+ - explicitly require sed for building

+ 

+ * Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.3-4

+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild

+ 

+ * Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 1.0.3-3

+ - Rebuilt for Python 3.9

+ 

+ * Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.3-2

+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild

+ 

+ * Mon Sep 30 2019 Rick Elrod <relrod@redhat.com> - 1.0.3-1

+ - Latest upstream

+ 

+ * Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 0.9.4-15

+ - Rebuilt for Python 3.8

+ 

+ * Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.4-14

+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild

+ 

+ * Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.4-13

+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

+ 

+ * Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.4-12

+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild

+ 

+ * Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 0.9.4-11

+ - Rebuilt for Python 3.7

+ 

+ * Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.4-10

+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

+ 

+ * Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.4-9

+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild

+ 

+ * Fri Mar 10 2017 Ralph Bean <rbean@redhat.com> - 0.9.4-8

+ - Fix help2man usage with python3.

+   https://bugzilla.redhat.com/show_bug.cgi?id=1430733

+ 

+ * Mon Feb 27 2017 Ralph Bean <rbean@redhat.com> - 0.9.4-7

+ - Fix missing Requires.  https://bugzilla.redhat.com/show_bug.cgi?id=1417730

+ 

+ * Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.4-6

+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild

+ 

+ * Mon Jan 2 2017 Ricky Elrod <relrod@redhat.com> - 0.9.4-5

+ - Add missing Obsoletes.

+ 

+ * Mon Jan 2 2017 Ricky Elrod <relrod@redhat.com> - 0.9.4-4

+ - Nuke python-version-specific subpackages. Just use py3 if we can.

+ 

+ * Mon Dec 19 2016 Miro Hrončok <mhroncok@redhat.com> - 0.9.4-3

+ - Rebuild for Python 3.6

+ 

+ * Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.4-2

+ - https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages

+ 

+ * Tue Jul 05 2016 Ricky Elrod <relrod@redhat.com> - 0.9.4-1

+ - Update to latest upstream.

+ 

+ * Fri Jun 03 2016 Ricky Elrod <relrod@redhat.com> - 0.9.3-4

+ - Add proper Obsoletes for rhbz#1329226.

+ 

+ * Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.3-3

+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

+ 

+ * Mon Jan 04 2016 Ralph Bean <rbean@redhat.com> - 0.9.3-2

+ - Modernize python macros and subpackaging.

+ - Move LICENSE to %%license macro.

+ - Make python3 the default on modern Fedora.

+ 

+ * Mon Jan 04 2016 Ralph Bean <rbean@redhat.com> - 0.9.3-1

+ - new version

+ 

+ * Tue Nov 10 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.2-3

+ - Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5

+ 

+ * Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.2-2

+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild

+ 

+ * Thu Mar 26 2015 Ricky Elrod <relrod@redhat.com> - 0.9.2-1

+ - Latest upstream release.

+ 

+ * Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8.0-3

+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild

+ 

+ * Wed May 28 2014 Kalev Lember <kalevlember@gmail.com> - 0.8.0-2

+ - Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4

+ 

+ * Fri Jan 31 2014 Ricky Elrod <codeblock@fedoraproject.org> - 0.8.0-1

+ - Latest upstream release.

+ 

+ * Fri Oct 4 2013 Ricky Elrod <codeblock@fedoraproject.org> - 0.7.2-2

+ - Add in patch to work without having python-requests 2.0.0.

+ 

+ * Sat Sep 28 2013 Ricky Elrod <codeblock@fedoraproject.org> - 0.7.2-1

+ - Latest upstream release.

+ 

+ * Thu Sep 5 2013 Ricky Elrod <codeblock@fedoraproject.org> - 0.6.0-7

+ - Only try building the manpage on Fedora, since RHEL's help2man doesn't

+   have the --no-discard-stderr flag.

+ 

+ * Thu Sep 5 2013 Ricky Elrod <codeblock@fedoraproject.org> - 0.6.0-6

+ - Loosen the requirement on python-pygments.

+ 

+ * Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6.0-5

+ - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild

+ 

+ * Tue Jul 2 2013 Ricky Elrod <codeblock@fedoraproject.org> - 0.6.0-4

+ - python-requests 1.2.3 exists in rawhide now.

+ 

+ * Sun Jun 30 2013 Ricky Elrod <codeblock@fedoraproject.org> - 0.6.0-3

+ - Patch to use python-requests 1.1.0 for now.

+ 

+ * Sat Jun 29 2013 Ricky Elrod <codeblock@fedoraproject.org> - 0.6.0-2

+ - Update to latest upstream release.

+ 

+ * Mon Apr 29 2013 Ricky Elrod <codeblock@fedoraproject.org> - 0.5.0-2

+ - Fix changelog messup.

+ 

+ * Mon Apr 29 2013 Ricky Elrod <codeblock@fedoraproject.org> - 0.5.0-1

+ - Update to latest upstream release.

+ 

+ * Mon Apr 8 2013 Ricky Elrod <codeblock@fedoraproject.org> - 0.4.1-3

+ - Fix manpage generation by exporting PYTHONPATH.

+ 

+ * Tue Mar 26 2013 Ricky Elrod <codeblock@fedoraproject.org> - 0.4.1-2

+ - Include Python3 support, and fix other review blockers.

+ 

+ * Mon Mar 11 2013 Ricky Elrod <codeblock@fedoraproject.org> - 0.4.1-1

+ - Update to latest upstream release

+ 

+ * Thu Jul 19 2012 Ricky Elrod <codeblock@fedoraproject.org> - 0.2.5-1

+ - Initial build.

file modified
+1
@@ -0,0 +1,1 @@ 

+ SHA512 (httpie-2.4.0.tar.gz) = 44cc7ff4fe0f3d8c53a7dd750465f6b56c36f5bbac06d22b760579bd60949039e82313845699669a659ec91adc69dbeac22c06ddd63af64e6f2e0edecf3e732a

no initial comment

Could you please share a scratchbuild?

The patches are missing.

rebased onto 8390d0bf204e144273b66ba04087407250d1154c

2 years ago

I'm curious why this is a single new commit and not a merge from the f34 branch to the epel8 branch. That way a git blame on the spec file will be meaningful.

rebased onto 6e02a05

2 years ago

No other reason than being clumsy, added the changes on top of F34 branch.

62 new commits added

  • Add EPEL8 version based on rawhide
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
  • Rebuilt for Python 3.10
  • Adapt doctest of tests.utils.http to work on Python 3.10 as well
  • Freshen up the packaging
  • Update to 2.4.0
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
  • Fix deps on F32 (COPR) and list all changes
  • Oops, a new year
  • Fix and tidy up dependencies
  • explicitly require sed for building
  • remove EL7-isms
  • use %autosetup and Python build macros
  • Python 2 is no more
  • version 2.3.0
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
  • Rebuilt for Python 3.9
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
  • Remove help2man conditional
  • Bump to 1.0.3
  • Rebuilt for Python 3.8
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
  • Remove obsolete Group tag
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
  • Rebuilt for Python 3.7
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
  • Fix help2man usage with python3.
  • Properly conditionalize this.
  • Fix missing requires (#1417730).
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
  • add missing Obsoletes
  • nuke python-version-specific subpackages; just use py3 if we can...
  • Rebuild for Python 3.6
  • - https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
  • latest version
  • fix my name
  • add obsoletes for rhbz#1329226
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
  • Latest upstream and adjust subpackaging to make python3 the default.
  • - Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
  • Update to latest upstream release
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
  • Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4
  • Latest upstream release
  • Work around not having python-requests 2.0.0
  • new sources too
  • Fix changelog from merge conflicts
  • Latest upstream release.
  • Only build manpages for Fedora
  • This might make it able to build on EPEL6 now.
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
  • Use python-requests 1.2.3 now in rawhide.
  • Patch to use python-requests 1.1.0 for now.
  • Upstream 0.6.0
  • Bump release.
  • Fix the right date this time.
  • Update to latest upstream and fix bogus date warning in changelog.
  • Fix manpage generation by exporting PYTHONPATH.
  • Initial import (#927457)
2 years ago

62 new commits added

  • Add EPEL8 version based on rawhide
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
  • Rebuilt for Python 3.10
  • Adapt doctest of tests.utils.http to work on Python 3.10 as well
  • Freshen up the packaging
  • Update to 2.4.0
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
  • Fix deps on F32 (COPR) and list all changes
  • Oops, a new year
  • Fix and tidy up dependencies
  • explicitly require sed for building
  • remove EL7-isms
  • use %autosetup and Python build macros
  • Python 2 is no more
  • version 2.3.0
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
  • Rebuilt for Python 3.9
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
  • Remove help2man conditional
  • Bump to 1.0.3
  • Rebuilt for Python 3.8
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
  • Remove obsolete Group tag
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
  • Rebuilt for Python 3.7
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
  • Fix help2man usage with python3.
  • Properly conditionalize this.
  • Fix missing requires (#1417730).
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
  • add missing Obsoletes
  • nuke python-version-specific subpackages; just use py3 if we can...
  • Rebuild for Python 3.6
  • - https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
  • latest version
  • fix my name
  • add obsoletes for rhbz#1329226
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
  • Latest upstream and adjust subpackaging to make python3 the default.
  • - Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
  • Update to latest upstream release
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
  • Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4
  • Latest upstream release
  • Work around not having python-requests 2.0.0
  • new sources too
  • Fix changelog from merge conflicts
  • Latest upstream release.
  • Only build manpages for Fedora
  • This might make it able to build on EPEL6 now.
  • - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
  • Use python-requests 1.2.3 now in rawhide.
  • Patch to use python-requests 1.1.0 for now.
  • Upstream 0.6.0
  • Bump release.
  • Fix the right date this time.
  • Update to latest upstream and fix bogus date warning in changelog.
  • Fix manpage generation by exporting PYTHONPATH.
  • Initial import (#927457)
2 years ago

I've uncommented the check section like this:

%check
rm build -rf  # WTF ugly hack to avoid build/lib on sys.path
%pytest -vvv

and run:

$ fedpkg --release epel8 mockbuild -N
...
+ /usr/bin/pytest-3 -v
/var/tmp/rpm-tmp.vOIWHw: line 35: /usr/bin/pytest-3: No such file or directory

$ mock -r epel-8-x86_64 shell --enable-network
...
<mock-chroot> sh-4.4# RPM_BUILD_ROOT=/ pip3 install pytest-httpbin
...
Successfully installed Flask-2.0.1 Jinja2-3.0.1 MarkupSafe-2.0.1 blinker-1.4 brotlipy-0.7.0 cffi-1.14.6 click-8.0.1 dataclasses-0.8 decorator-5.0.9 httpbin-0.7.0 importlib-metadata-4.6.3 itsdangerous-2.0.1 pycparser-2.20 pytest-httpbin-1.0.0 raven-6.10.0 typing-extensions-3.10.0.0 werkzeug-2.0.1 zipp-3.5.0
<mock-chroot> sh-4.4# RPM_BUILD_ROOT=/ pip3 install pytest
Successfully installed attrs-21.2.0 iniconfig-1.1.1 packaging-21.0 pluggy-0.13.1 py-1.10.0 pyparsing-2.4.7 pytest-6.2.4 toml-0.10.2
<mock-chroot> sh-4.4# ln -s /usr/bin/pytest /usr/bin/pytest-3


$ fedpkg --release epel8 mockbuild -N
...
=================================== FAILURES ===================================
_________________________ test_path_dot_normalization __________________________
Traceback (most recent call last):
  File "/builddir/build/BUILD/httpie-2.4.0/tests/test_httpie.py", line 62, in test_path_dot_normalization
    assert 'GET /etc/password?param=value' in r
AssertionError: assert 'GET /etc/password?param=value' in 'GET /../../etc/password?param=value HTTP/1.1\r\nAccept: */*\r\nAccept-Encoding: gzip, deflate\r\nConnection: keep-alive\r\nHost: example.org\r\nUser-Agent: HTTPie/2.4.0\r\n\r\n\n\n'
=========================== short test summary info ============================
FAILED tests/test_httpie.py::test_path_dot_normalization - AssertionError: as...
================== 1 failed, 374 passed, 18 skipped in 14.83s ==================

I think it is safe to ignore this failure, as it just changes absolute/relative path and might be related to how we manipulate PYTHONPATH etc.

I'd say this looks pretty good now. Ship it!

Pull-Request has been merged by mikelo2

2 years ago