Bug 95168 - libphobos: std.net.curl does not understand HTTP/2 status lines
Summary: libphobos: std.net.curl does not understand HTTP/2 status lines
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: d (show other bugs)
Version: 10.1.0
: P3 normal
Target Milestone: ---
Assignee: Iain Buclaw
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-05-16 22:55 UTC by Iain Buclaw
Modified: 2020-05-17 17:21 UTC (History)
0 users

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Iain Buclaw 2020-05-16 22:55:15 UTC
Fix in upstream is here: https://github.com/dlang/phobos/pull/6752

It's trivial, so can be backported to gcc-10.

The effects of this bug means that programs using this module (such as dub, the D package manager) do not work if compiled by gdc-10.  gdc-9 would be affected as well.
Comment 1 GCC Commits 2020-05-17 17:02:13 UTC
The master branch has been updated by Iain Buclaw <ibuclaw@gcc.gnu.org>:

https://gcc.gnu.org/g:e977a5df5bae2bce6e3e95456f5da0dbfdd02934

commit r11-445-ge977a5df5bae2bce6e3e95456f5da0dbfdd02934
Author: Iain Buclaw <ibuclaw@gdcproject.org>
Date:   Sun May 17 18:49:19 2020 +0200

    libphobos: Merge upstream druntime 5cc061a8, phobos 64ed4684f
    
    - core.cpuid has been fixed to not use i7 detection on AMD processors.
    - std.net.curl has been fixed to correctly handle HTTP/2 status lines.
    - std.zip has had a test fixed to not rely on unzip being installed.
    
    Fixes: PR d/95166
           PR d/95167
           PR d/95168
    
    Reviewed-on: https://github.com/dlang/druntime/pull/3107
                 https://github.com/dlang/phobos/pull/7486
Comment 2 GCC Commits 2020-05-17 17:19:46 UTC
The releases/gcc-10 branch has been updated by Iain Buclaw <ibuclaw@gcc.gnu.org>:

https://gcc.gnu.org/g:999c80acfdd890b789678c989c3d740969c14d20

commit r10-8150-g999c80acfdd890b789678c989c3d740969c14d20
Author: Iain Buclaw <ibuclaw@gdcproject.org>
Date:   Sun May 17 18:49:19 2020 +0200

    libphobos: Backport library fixes from mainline
    
    - core.cpuid has been fixed to not use i7 detection on AMD processors.
    - std.net.curl has been fixed to correctly handle HTTP/2 status lines.
    - std.zip has had a test fixed to not rely on unzip being installed.
    
    libphobos/ChangeLog:
    
            PR d/95166
            * libdruntime/core/cpuid.d (cpuidX86): Do not use i7 detection on AMD
            processors.
            (hasCPUID): Fix deprecated asm syntax.
    
            PR d/95167
            * src/std/zip.d (unittest): Skip test if unzip is not installed.
    
            PR d/95168
            * src/std/net/curl.d (HTTP.onReceiveHeader): Move status line parsing
            to ...
            (HTTP.parseStatusLine): ... here.  New function.  Add support for
            parsing HTTP/2 status lines.
Comment 3 Iain Buclaw 2020-05-17 17:21:46 UTC
Done.