‘http-fetch’ is unable to fetch <https://repology.org/api/v1/project/emacs:modus-themes>

  • Done
  • quality assurance status badge
Details
2 participants
  • Ludovic Courtès
  • Xinglu Chen
Owner
unassigned
Submitted by
Xinglu Chen
Severity
normal
X
X
Xinglu Chen wrote on 10 Feb 2022 18:58
(address . bug-guix@gnu.org)
87czjuwqlj.fsf@yoctocell.xyz
Hi,

For some reason, the ‘http-fetch’ procedure in (guix http-client) is
unable to fetch

Toggle snippet (21 lines)
scheme@(guile-user)> ,use(guix http-client)
scheme@(guile-user)> (http-fetch "https://repology.org/api/v1/project/emacs:modus-themes")
ice-9/boot-9.scm:1685:16: In procedure raise-exception:
Bad Read-Header-Line header: #<eof>


Entering a new prompt. Type `,bt' for a backtrace or `,q' to continue.
scheme@(guile-user) [1]> ,bt
In guix/http-client.scm:
120:21 5 (http-fetch _ #:port _ #:text? _ #:buffered? _ # _ # _ # …)
In web/client.scm:
530:24 4 (http-request _ #:body _ #:verify-certificate? _ #:port …)
In web/response.scm:
198:31 3 (read-response #<input-output: string 7f7bb290c0e0>)
In web/http.scm:
1188:15 2 (read-response-line _)
250:2 1 (read-header-line _)
In ice-9/boot-9.scm:
1685:16 0 (raise-exception _ #:continuable? _)

The URL opens just fine in Icecat. ‘http-request’ from (web client) is
able to handle it as well.

Toggle snippet (5 lines)
scheme@(guile-user)> ,use(web client)
scheme@(guile-user)> (http-request "https://repology.org/api/v1/project/emacs:modus-themes")
$1 = #<<response> version: (1 . 1) code: 200 reason-phrase: "OK" headers: ((server . "nginx") (date . #<date nanosecond: 0 second: 48 minute: 54 hour: 17 day: 10 month: 2 year: 2022 zone-offset: 0>) (content-type application/json) (content-length . 1325) (connection close) (expires . #<date nanosecond: 0 second: 48 minute: 54 hour: 18 day: 10 month: 2 year: 2022 zone-offset: 0>) (cache-control (max-age . 3600)) (x-content-type-options . "nosniff") (strict-transport-security . "max-age=31536000; includeSubDomains; preload") (referrer-policy . "unsafe-url") (vary accept-encoding cookie) (permissions-policy . "interest-cohort=()") (content-security-policy . "default-src 'none'; style-src 'self'; script-src 'self'; img-src 'self'; font-src 'self'; frame-ancestors 'none'; base-uri 'none'; form-action 'self'") (x-frame-options . "DENY")) port: #<closed: file 7f7bb3bda540>>
$2 = #vu8(91 123 34 114 101 112 111 34 58 34 109 101 108 112 97 95 115 116 97 98 108 101 34 44 34 110 97 109 101 34 58 34 109 111 100 117 115 45 116 104 101 109 101 115 34 44 34 118 105 115 105 98 108 101 110 97 109 101 34 58 34 109 111 100 117 115 45 116 104 101 109 101 115 34 44 34 118 101 114 115 105 111 110 34 58 34 50 46 48 46 48 34 44 34 109 97 105 110 116 97 105 110 101 114 115 34 58 91 34 105 110 102 111 64 112 114 111 116 101 115 105 108 97 111 115 46 99 111 109 34 93 44 34 115 117 109 109 97 114 121 34 58 34 72 105 103 104 108 121 32 97 99 99 101 115 115 105 98 108 101 32 116 104 101 109 101 115 32 40 87 67 65 71 32 65 65 65 41 34 44 34 115 116 97 116 117 115 34 58 34 110 101 119 101 115 116 34 44 34 111 114 105 103 118 101 114 115 105 111 110 34 58 110 117 108 108 125 44 123 34 114 101 112 111 34 58 34 103 110 117 95 101 108 112 97 34 44 34 110 97 109 101 34 58 34 109 111 100 117 115 45 116 104 101 109 101 115 34 44 34 118 105 115 105 98 108 101 110 97 109 101 34 58 34 109 111 100 117 115 45 116 104 101 109 101 115 34 44 34 118 101 114 115 105 111 110 34 58 34 50 46 48 46 48 34 44 34 109 97 105 110 116 97 105 110 101 114 115 34 58 91 34 105 110 102 111 64 112 114 111 116 101 115 105 108 97 111 115 46 99 111 109 34 93 44 34 115 117 109 109 97 114 121 34 58 34 72 105 103 104 108 121 32 97 99 99 101 115 115 105 98 108 101 32 116 104 101 109 101 115 32 40 87 67 65 71 32 65 65 65 41 34 44 34 115 116 97 116 117 115 34 58 34 110 101 119 101 115 116 34 44 34 111 114 105 103 118 101 114 115 105 111 110 34 58 110 117 108 108 125 44 123 34 114 101 112 111 34 58 34 103 110 117 103 117 105 120 34 44 34 115 114 99 110 97 109 101 34 58 34 101 109 97 99 115 45 109 111 100 117 115 45 116 104 101 109 101 115 34 44 34 98 105 110 110 97 109 101 34 58 34 101 109 97 99 115 45 109 111 100 117 115 45 116 104 101 109 101 115 34 44 34 118 105 115 105 98 108 101 110 97 109 101 34 58 34 101 109 97 99 115 45 109 111 100 117 115 45 116 104 101 109 101 115 34 44 34 118 101 114 115 105 111 110 34 58 34 50 46 48 46 48 34 44 34 115 117 109 109 97 114 121 34 58 34 65 99 99 101 115 115 105 98 108 101 32 116 104 101 109 101 115 32 40 87 67 65 71 32 65 65 65 41 34 44 34 115 116 97 116 117 115 34 58 34 110 101 119 101 115 116 34 44 34 111 114 105 103 118 101 114 115 105 111 110 34 58 110 117 108 108 125 44 123 34 114 101 112 111 34 58 34 109 101 108 112 97 34 44 34 110 97 109 101 34 58 34 109 111 100 117 115 45 116 104 101 109 101 115 34 44 34 118 105 115 105 98 108 101 110 97 109 101 34 58 34 109 111 100 117 115 45 116 104 101 109 101 115 34 44 34 118 101 114 115 105 111 110 34 58 34 50 48 50 50 48 50 49 48 46 49 53 50 52 34 44 34 109 97 105 110 116 97 105 110 101 114 115 34 58 91 34 105 110 102 111 64 112 114 111 116 101 115 105 108 97 111 115 46 99 111 109 34 93 44 34 115 117 109 109 97 114 121 34 58 34 72 105 103 104 108 121 32 97 99 99 101 115 115 105 98 108 101 32 116 104 101 109 101 115 32 40 87 67 65 71 32 65 65 65 41 34 44 34 115 116 97 116 117 115 34 58 34 114 111 108 108 105 110 103 34 44 34 111 114 105 103 118 101 114 115 105 111 110 34 58 110 117 108 108 125 44 123 34 114 101 112 111 34 58 34 110 105 120 95 115 116 97 98 108 101 95 50 49 95 49 49 34 44 34 110 97 109 101 34 58 34 101 109 97 99 115 45 109 111 100 117 115 45 116 104 101 109 101 115 34 44 34 118 105 115 105 98 108 101 110 97 109 101 34 58 34 101 109 97 99 115 45 109 111 100 117 115 45 116 104 101 109 101 115 34 44 34 118 101 114 115 105 111 110 34 58 34 50 48 50 49 49 49 49 52 46 49 50 48 57 34 44 34 109 97 105 110 116 97 105 110 101 114 115 34 58 91 34 102 97 108 108 98 97 99 107 45 109 110 116 45 110 105 120 64 114 101 112 111 108 111 103 121 34 93 44 34 99 97 116 101 103 111 114 105 101 115 34 58 91 34 101 109 97 99 115 50 55 80 97 99 107 97 103 101 115 34 93 44 34 115 116 97 116 117 115 34 58 34 117 110 116 114 117 115 116 101 100 34 44 34 111 114 105 103 118 101 114 115 105 111 110 34 58 110 117 108 108 125 44 123 34 114 101 112 111 34 58 34 110 105 120 95 117 110 115 116 97 98 108 101 34 44 34 110 97 109 101 34 58 34 101 109 97 99 115 45 109 111 100 117 115 45 116 104 101 109 101 115 34 44 34 118 105 115 105 98 108 101 110 97 109 101 34 58 34 101 109 97 99 115 45 109 111 100 117 115 45 116 104 101 109 101 115 34 44 34 118 101 114 115 105 111 110 34 58 34 50 48 50 50 48 50 48 54 46 55 53 49 34 44 34 109 97 105 110 116 97 105 110 101 114 115 34 58 91 34 102 97 108 108 98 97 99 107 45 109 110 116 45 110 105 120 64 114 101 112 111 108 111 103 121 34 93 44 34 99 97 116 101 103 111 114 105 101 115 34 58 91 34 101 109 97 99 115 50 55 80 97 99 107 97 103 101 115 34 93 44 34 115 116 97 116 117 115 34 58 34 117 110 116 114 117 115 116 101 100 34 44 34 111 114 105 103 118 101 114 115 105 111 110 34 58 110 117 108 108 125 93)
-----BEGIN PGP SIGNATURE-----

iQJJBAEBCAAzFiEEAVhh4yyK5+SEykIzrPUJmaL7XHkFAmIFUlgVHHB1YmxpY0B5
b2N0b2NlbGwueHl6AAoJEKz1CZmi+1x52TIP/jmf5QN1rTJz7xdimsa096+eee0z
zWosnICfBFaze2Uacg/6h1RAft+XZWYQQ1pvFA2QSrN+kI62Ms0cnU3kDT45XqPe
wn9WQ0ms2E97iWRtPBx3Lp0+ofpLC4XnZanhvlXzbHxztuVgHGZt4wV2b7+4mJT4
alnnhMq8xHIm5Swn4SdnOAddkJeOXJXJocnjW3WxZD2ECiYCfzslzhQpsf5OEM0W
51RZKavcvNhmXy+Gd4BNW8ABuTJ8OSTO1W59+dSBhtf3iikhccCno2AE5Iu7TxJT
3RofZYErcrSUj/HwzHSiBVOa3ApakmEPTyTL3CqHWTBTxYmk1YpcESN2cq+pM/KV
0awoyHGIgFXPR96a+ceDhGKkjiaE/BAoVD3Qhd8x+APauKV5pisn6gENsdX088Yc
O0aJEi6uvPzf27Iv7hcLzIScVLQnqlQP9yDI8Gpatia84MAYLNjQBKY/hdHYoiYr
j5MdkrDXV3Lhgzc4+9YyoQALsd389todX+dlYFZEn4XvQuBjf5/L71ymVThZ6MLa
B4nt46SEffvFlE2m1nrJFdIosbJYXebSzjhTC67C8bIU48llttBAwnMgZRInwBuV
Qd2hrPVt9F2M7j9LAvkK+GXOpKmxGBxnZilc91tXpP1l1y+zfOaXpT+1cnwzpgGN
WTJ7JmrGb7T+tTGz
=YzA3
-----END PGP SIGNATURE-----

L
L
Ludovic Courtès wrote on 16 Feb 2022 15:42
(name . Xinglu Chen)(address . public@yoctocell.xyz)(address . 53923@debbugs.gnu.org)
87wnhux47w.fsf@gnu.org
Hi,

Xinglu Chen <public@yoctocell.xyz> skribis:

Toggle quote (24 lines)
> scheme@(guile-user)> ,use(guix http-client)
> scheme@(guile-user)> (http-fetch "https://repology.org/api/v1/project/emacs:modus-themes")
> ice-9/boot-9.scm:1685:16: In procedure raise-exception:
> Bad Read-Header-Line header: #<eof>
>
>
> Entering a new prompt. Type `,bt' for a backtrace or `,q' to continue.
> scheme@(guile-user) [1]> ,bt
> In guix/http-client.scm:
> 120:21 5 (http-fetch _ #:port _ #:text? _ #:buffered? _ # _ # _ # …)
> In web/client.scm:
> 530:24 4 (http-request _ #:body _ #:verify-certificate? _ #:port …)
> In web/response.scm:
> 198:31 3 (read-response #<input-output: string 7f7bb290c0e0>)
> In web/http.scm:
> 1188:15 2 (read-response-line _)
> 250:2 1 (read-header-line _)
> In ice-9/boot-9.scm:
> 1685:16 0 (raise-exception _ #:continuable? _)
>
>
> The URL opens just fine in Icecat. ‘http-request’ from (web client) is
> able to handle it as well.

It works if you strip the ‘User-Agent’ header that ‘http-fetch’ provides
by default:

Toggle snippet (9 lines)
scheme@(guile-user)> ,use(guix http-client)
scheme@(guile-user)> (http-fetch "https://repology.org/api/v1/project/emacs:modus-themes" #:headers '())
$13 = #<input: file 7fdd94cb5930>
$14 = 1342
scheme@(guile-user)> ,use(rnrs io ports)
scheme@(guile-user)> (get-string-all $13)
$15 = "[{\"repo\":\"gnu_elpa\",\"name\":\"modus-themes\",\"visiblename\":\"modus-themes\",\"version\":\"2.0.0\",\"maintainers\":[\"info@protesilaos.com\"],\"summary\":\"Highly accessible themes (WCAG AAA)\",\"status\":\"newest\",\"origversion\":null},{\"repo\":\"gnuguix\",\"srcname\":\"emacs-modus-themes\",\"binname\":\"emacs-modus-themes\",\"visiblename\":\"emacs-modus-themes\",\"version\":\"2.0.0\",\"summary\":\"Accessible themes (WCAG AAA)\",\"status\":\"newest\",\"origversion\":null},{\"repo\":\"melpa\",\"name\":\"modus-themes\",\"visiblename\":\"modus-themes\",\"version\":\"20220215.1631\",\"maintainers\":[\"info@protesilaos.com\"],\"summary\":\"Highly accessible and customizable themes (WCAG AAA)\",\"status\":\"rolling\",\"origversion\":null},{\"repo\":\"melpa_stable\",\"name\":\"modus-themes\",\"visiblename\":\"modus-themes\",\"version\":\"2.0.0\",\"maintainers\":[\"info@protesilaos.com\"],\"summary\":\"Highly accessible themes (WCAG AAA)\",\"status\":\"newest\",\"origversion\":null},{\"repo\":\"nix_stable_21_11\",\"name\":\"emacs-modus-themes\",\"visiblename\":\"emacs-modus-themes\",\"version\":\"20211114.1209\",\"maintainers\":[\"fallback-mnt-nix@repology\"],\"categories\":[\"emacs27Packages\"],\"status\":\"untrusted\",\"origversion\":null},{\"repo\":\"nix_unstable\",\"name\":\"emacs-modus-themes\",\"visiblename\":\"emacs-modus-themes\",\"version\":\"20220206.751\",\"maintainers\":[\"fallback-mnt-nix@repology\"],\"categories\":[\"emacs27Packages\"],\"status\":\"untrusted\",\"origversion\":null}]"

Thanks,
Ludo’.
L
L
Ludovic Courtès wrote on 16 Feb 2022 15:42
control message for bug #53923
(address . control@debbugs.gnu.org)
87v8xex47p.fsf@gnu.org
tags 53923 notabug
close 53923
quit
?
Your comment

This issue is archived.

To comment on this conversation send an email to 53923@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 53923
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch