It seems quite clear that rust users use hyper but few of them want to work on making it work for a C project like curl, and among existing curl users there is virtually no interest in hyper. The overlap in the Venn diagram of the two universes is not big enough.

  • livingcoder@programming.dev
    link
    fedilink
    arrow-up
    1
    ·
    2 days ago

    At first I was disappointed to see this, but after looking into it it looks like they weren’t using hyper as a means to migrate the project to Rust. If they’re not going to move away from C, it seems like a fair decision.

  • esa@discuss.tchncs.de
    link
    fedilink
    arrow-up
    15
    ·
    6 days ago

    I think my usecase of curl is entirely covered by hyper (I just use it for http/s with a small handful of flags); but I also have absolutely no idea what goes on inside curl or how my distro chooses to build it.

    Rebuilding curl to use Rust here and there (it still supports rustls and quiche) seems like an interesting undertaking, but yeah, I suspect most curl users don’t build it themselves and have no idea what experimental features it could be built with. Guessing the curl survey has data for that.

    Stenberg seems like a cool dude and this seems like an amicable split.

  • pr06lefs@lemmy.ml
    link
    fedilink
    arrow-up
    5
    ·
    6 days ago

    I occasionally use curl myself but never really thought about what language(s) it used in its implementation. Curious if there are power curl users to whom its internal implementation details would really matter. For me its mainly just testing my own websites and vulns there are unlikely. If I was using curl to scrape a lot of sketchy sites I might care about its memory security more.

    • BB_C@programming.dev
      link
      fedilink
      arrow-up
      3
      ·
      5 days ago

      The most important part of curl is the library, not the CLI tool. And the TLS backend is very much relevant due to varying features supported, different licenses involved, and varying levels of ease when it comes to building and distribution.

      That’s when you’re providing binaries. Otherwise, you would have to be wary of potential compatibility issues with libcurl packages provided by different Linux distributions for example.

      See CURLOPT_ECH for a recent and still evolving example of this.