hyper

An HTTP library for Rust

Subscribe to updates I use hyper


Statistics on hyper

Number of watchers on Github 3261
Number of open issues 62
Average time to close an issue 8 days
Main language Rust
Average time to merge a PR 1 day
Open pull requests 41+
Closed pull requests 67+
Last commit 4 months ago
Repo Created almost 4 years ago
Repo Last Updated 4 months ago
Size 24.1 MB
Homepage https://hyper.rs
Organization / Authorhyperium
Latest Releasev0.11.20
Contributors88
Page Updated
Do you use hyper? Leave a review!
View open issues (62)
View hyper activity
View on github
Latest Open Source Launches
Trendy new open source projects in your inbox! View examples

Subscribe to our mailing list

Evaluating hyper for your project? Score Explanation
Commits Score (?)
Issues & PR Score (?)

hyper

Travis Build Status Appveyor Build status Coverage Status MIT licensed crates.io Released API docs Master API docs

A low-level HTTP implementation for Rust.

Get started by looking over the guides.

Overview

hyper is a fast, safe HTTP implementation written in and for Rust.

hyper offers both an HTTP client and server which can be used to drive complex web applications written entirely in Rust.

hyper makes use of async IO (non-blocking sockets) via the Tokio and Futures crates.

Be aware that hyper is still actively evolving towards 1.0, and is likely to experience breaking changes before stabilising. You can also see the issues in the upcoming milestones.

hyper open issues Ask a question     (View All Issues)
  • over 1 year The design of the Futures-based Body Stream
  • over 1 year Requests to hyper server eventually start failing.
  • over 1 year Bump from 0.9.10 to 0.9.11 was breaking.
  • over 1 year keepalive requests hitting Nagle's algorithm delays
  • over 1 year No documentation for status::StatusCode::from_u16/to_u16
  • almost 2 years Future-based API
  • almost 2 years Consider using custom allocators
  • almost 2 years Add performance tests to the test suite
  • almost 2 years Memory pooling
  • almost 2 years Zero-copy techniques
  • almost 2 years Set Host header at serialization, not at beginning
  • almost 2 years Upgrade openssl dependency
  • almost 2 years Misorder handler and response in async client request
  • almost 2 years Host header not set when using RequestBuilder header()
  • almost 2 years Split hyper into more crates
  • almost 2 years Allow headers with dynamic key names
  • almost 2 years Using 2 types for same Header can cause a panic
  • almost 2 years Impossible to configure custom TLS validation
  • almost 2 years Scheme trait implementors not shown
  • almost 2 years Accept header drops */* MIMEs
  • almost 2 years Proposal: async Handler API
  • almost 2 years TLS Certificate validation is disabled on Windows
  • almost 2 years The OpenSSL library reported an error: bad write retry
  • about 2 years Handle Expect: 100-continue in Server
  • about 2 years TLS mutual auth
  • about 2 years Windows aborts sockets on drop
  • about 2 years Add docs for features
  • about 2 years Add a Client Guide
  • about 2 years Support necessary headers for Digest authentication
  • over 2 years header::internal::Item.to_string() does not handle multiple headers with the same key
hyper open pull requests (View All Pulls)
  • Add Headers::content_type_charset
  • Auto-set auth header if URL contains credentials
  • Start supporting heapsize
  • feat(headers): send headers back in set methods
  • feat(status): add StatusCodes scoped by StatusClass
  • [WIP] feat(headers): Add Origin header for CORS requests
  • feat(headers): better MIME types and more
  • feat(proxy): client proxy for http and https
  • Correctly handle repeated headers.
  • Update to rust-url 1.0
  • feat(client): handle errors in Client.request
  • Async IO
  • feat(net): Add OpensslClient constructor
  • feat(headers): Add Referrer-Policy header
  • A couple performance boosts
  • Update cookie to 0.3
  • Update serde to 0.8
  • feat(client): add a Fn(Response) RedirectPolicy
  • Async Chunked Decoding
  • fix(net): upgrade openssl dependency
  • Add 'take_buf' method to BufReader.
  • Change default ssl to hyper-openssl
  • Create new Uri struct
  • Set timeouts immediately after accepting a connection
  • feat(headers): Add support for Retry-After header
  • Explain content_type assigned type
  • Make Response more generic
  • Ignore invalid cookies
  • feat(examples): add an example server with a custom event loop
  • fix(header): Allow iterate cookie
  • feat(example): add an example http proxy server
  • feat(client): make dns resolver pluggable
  • feat(headers): support known extensions
  • feat(headers): Implement HSTS preload
  • feat(server): support upgrading to other protocols
  • feat(headers): add `rel=prefetch`
  • fix(headers): Handle wildcard character for Access-Control-Allow-Methods
  • Initial HTTP/2 support for Client and Server
  • feat(client): redesign the `Connect` trait
  • fix(server): Sleep on socket IO errors
  • feat(server): Make sleep_on_error duration configurable and enable it per default
hyper questions on Stackoverflow (View All Questions)
  • Hyper-V assign ip addreses to VM-s with DHCP based on MAC Address
  • Do we have any Hyper-V gurus here? I have three questions
  • Using Hyper-V vhd in Windows Virtual PC
  • OpenRG does not allocate IP address to a hyper-v host
  • Hyper-V: Isolate I/O input of vm from the host
  • Expected length of a path in a hyper graphs
  • Is there any alternative for Hyper V WMI GuestIntrinsicExchangeItems or GuestExchangeItems for virtualbox and vmware
  • Hyper POST request always yields 400
  • Hyper-V is enabled, but still unable to install HAXM
  • Hyper-V virtual servers for voice
  • Creating Hyper-V Administrators group in Windows 10
  • issue with gem 'minitest-hyper'
  • Macro Hyper links in Excel
  • Bugcheck 0x109 Windows Server 2012 R2 Hyper-V VM
  • Why is my Hyper-V VM getting the host IP address?
  • Hyper-V is breaking my internet connection
  • Selenium IDE_I need to select the bcc hyper link using selenium ide and type the valid email id
  • SLAT disappeared after Hyper-V feature is on
  • Pass data for GET request using Hyper
  • Texts are not truncating properly when the hyper link is added in html
  • Can VS2015 running on hyper-v VM connect to VS Android Emulator on a different VM?
  • How to create virtual machine using WMIC on hyper-v with python script or any command?
  • is it possible to run vagrant on a hyper-v vm with windows 7?
  • Starting ICQ via hyper link?
  • Hyper-V and Running Android Studio
  • Hyper-V VM disconnecting on high processor load
  • Windows Phone 8.1 emulators is not available in Hyper-V
  • How to add hyper link in Odoo images?
  • Hyper link is not working for second row + Datatable
  • how to enable hyper-v in windows 10 home edition for running windows phone 8.1 emulator
hyper list of languages used
hyper latest release notes

Bug Fixes

  • server:
    • Make sleep_on_errors configurable and use it in example (3a36eb55)
    • Sleep on socket IO errors (68458cde)

Features

  • body: add Body::is_empty() method (2f45d539)
  • request: add Request::body_mut() method (3fa191a2)

Bug Fixes

  • client:
    • prevent empty bodies sending transfer-encoding for GET, HEAD (77adab4e)
    • detect connection closes as pool tries to use (dc619a8f, closes #1439)
  • uri: make absolute-form uris always have a path (a9413d73)

Features

  • client: Client will retry requests on fresh connections (ee61ea9a)

Bug Fixes

  • client: send an Error::Cancel if a queued request is dropped (88f01793)

Features

  • client: add http1_writev configuration option (b0aa6497)
Other projects in Rust