From 267ac92abd7c2e4ac20e177e71896cdde8bf7cf5 Mon Sep 17 00:00:00 2001 From: Hugo Buddelmeijer Date: Mon, 15 Sep 2025 18:14:23 +0200 Subject: [PATCH] gnu: httpie: Update to 3.2.4. * gnu/packages/python-web.scm (httpie): Update to 3.2.4. [source]: Switch to git-fetch. [arguments]: Enable tests, disable failing tests. Patch setup.cfg. [synopsis]: Update using PyPI synopsis. [propagated-inputs]: Remove python-colorama, python-importlib-metadata, python-pip, and python-setuptools. [native-inputs]: Add python-pytest-httpbin, python-pytest-mock, python-responses, and python-werkzeug. Change-Id: I8b7c8da377ed918f4abf06f51c399e6de54c51fa Reviewed-by: Nicolas Graves Signed-off-by: Sharlatan Hellseher --- gnu/packages/python-web.scm | 47 ++++++++++++++++++++++++++----------- 1 file changed, 33 insertions(+), 14 deletions(-) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index bb4b8119569..a762eeda49b 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -2579,38 +2579,57 @@ other HTTP libraries.") (define-public httpie (package (name "httpie") - (version "3.2.2") + (version "3.2.4") (source (origin - (method url-fetch) - (uri (pypi-uri "httpie" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/httpie/cli") + (commit version))) + (file-name (git-file-name name version)) (sha256 - (base32 "140w4mr0w7scpf4j5qm4h475vbwrgxzkdwyygwcmql1r1cgngywb")))) + (base32 "0ii11xfqkbawg1v8dlli4fqq5k3yc2v65z3j7k3p4gng998s94mr")))) (build-system pyproject-build-system) (arguments - ;; The tests attempt to access external web servers, so we cannot run them. - '(#:tests? #f)) - (native-inputs (list python-setuptools python-wheel)) + (list + #:phases + #~(modify-phases %standard-phases + (add-before 'build 'remove-unnecessary-dependencies + ;; Remove pip and setuptools dependencies so sanity-check.py passes. + (lambda _ + (substitute* "setup.cfg" + (("(pip|setuptools)") ""))))) + #:test-flags + ;; test_plugins_cli.py communicates through subprocesses + ;; mocking stdin, which does not work in the build container. + ;; test_ssl.py cannot find the SSL certificates. + ;; test_binary.py fails for an unknown reason. + #~(list "--ignore=tests/test_plugins_cli.py" + "--ignore=tests/test_ssl.py" + "--ignore=tests/test_binary.py"))) + (native-inputs (list python-pytest + python-pytest-httpbin + python-pytest-mock + python-responses + python-setuptools + python-werkzeug + python-wheel)) (propagated-inputs (list python-charset-normalizer - python-colorama python-defusedxml - python-importlib-metadata python-multidict - python-pip python-pygments python-requests python-requests-toolbelt - python-rich - python-setuptools)) + python-rich)) (home-page "https://httpie.io") - (synopsis "cURL-like tool for humans") + (synopsis "Modern, user-friendly command-line HTTP client for the API era") (description "A command line HTTP client with an intuitive UI, JSON support, syntax highlighting, wget-like downloads, plugins, and more. It consists of a single http command designed for painless debugging and interaction with HTTP servers, RESTful APIs, and web services.") - ;; This was fixed in 1.0.3. + ;; CVE-2019-10751 was fixed in 1.0.3. (properties `((lint-hidden-cve "CVE-2019-10751"))) (license license:bsd-3)))