{"action":"created","issue":{"url":"https://api.github.com/repos/hyperium/hyper/issues/957","repository_url":"https://api.github.com/repos/hyperium/hyper","labels_url":"https://api.github.com/repos/hyperium/hyper/issues/957/labels{/name}","comments_url":"https://api.github.com/repos/hyperium/hyper/issues/957/comments","events_url":"https://api.github.com/repos/hyperium/hyper/issues/957/events","html_url":"https://github.com/hyperium/hyper/issues/957","id":189775833,"number":957,"title":"Requests hangup","user":{"login":"shanegibbs","id":2838876,"avatar_url":"https://avatars.githubusercontent.com/u/2838876?v=3","gravatar_id":"","url":"https://api.github.com/users/shanegibbs","html_url":"https://github.com/shanegibbs","followers_url":"https://api.github.com/users/shanegibbs/followers","following_url":"https://api.github.com/users/shanegibbs/following{/other_user}","gists_url":"https://api.github.com/users/shanegibbs/gists{/gist_id}","starred_url":"https://api.github.com/users/shanegibbs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shanegibbs/subscriptions","organizations_url":"https://api.github.com/users/shanegibbs/orgs","repos_url":"https://api.github.com/users/shanegibbs/repos","events_url":"https://api.github.com/users/shanegibbs/events{/privacy}","received_events_url":"https://api.github.com/users/shanegibbs/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":8,"created_at":"2016-11-16T17:14:19Z","updated_at":"2016-11-18T16:27:52Z","closed_at":null,"body":"A request to `http://test.com` results in the error below. Removing `Connection:close` ([here](https://github.com/hyperium/hyper/blob/8541ac72d7ec80a36171115501e49dd47bcb1d0d/examples/client.rs#L30)) seems to fix it. Perhaps related to change https://github.com/hyperium/hyper/pull/930.\r\n\r\n```\r\n~/tmp/hyper 27a480c § RUST_LOG=hyper=trace cargo run --example client http://test.com\r\n    Finished debug [unoptimized + debuginfo] target(s) in 0.1 secs\r\n     Running `target/debug/examples/client http://test.com`\r\nDEBUG:hyper::client::connect: Https::connect(\"http://test.com/\")\r\nTRACE:hyper::client: deadline = Some(Time(10001)), now = Time(1)\r\nDEBUG:hyper::client::dns: resolve \"test.com\"\r\nDEBUG:hyper::client::connect: Http::resolved <- (\"test.com\", Ok(V4(69.172.200.235)))\r\nTRACE:hyper::client: connecting (\"http\", \"test.com\", 80)\r\nTRACE:hyper::client: deadline = Some(Time(10001)), now = Time(2)\r\nTRACE:hyper::client: connected and writable (\"http\", \"test.com\", 80)\r\nTRACE:hyper::http::conn: Conn::ready events='Writable', blocked=None\r\nTRACE:hyper::http::conn: on_writable -> Init { interest: Write, timeout: Some(Duration { secs: 10, nanos: 0 }), timeout_start: Some(Time(31)) }\r\nDEBUG:hyper::client: default Handler.on_control()\r\nTRACE:hyper::header: Headers.set( \"Host\", test.com )\r\nTRACE:hyper::header: Headers.set( \"Connection\", close )\r\nTRACE:hyper::http: should_keep_alive(version=Http11, header=Some(Connection([Close]))) = false\r\nTRACE:hyper::http::h1::parse: writing head: MessageHead { version: Http11, subject: RequestLine(Get, AbsolutePath { path: \"/\", query: None }), headers: Headers { Host: test.com, Connection: close, } }\r\nDEBUG:hyper::http::h1::parse: writing Headers { Host: test.com, Connection: close, }\r\nTRACE:hyper::http::conn: State::update state=Http1(Http1 { reading: Init, writing: Chunk(Chunk { buf: [71, 69, 84, 32, 47, 32, 72, 84, 84, 80, 47, 49, 46, 49, 13, 10, 72, 111, 115, 116, 58, 32, 116, 101, 115, 116, 46, 99, 111, 109, 13, 10, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 58, 32, 99, 108, 111, 115, 101, 13, 10, 13, 10], pos: 0, next: (Encoder { kind: Length(0), prefix: Prefix(None), is_closed: false }, Next::Read(Duration { secs: 10, nanos: 0 })) }), keep_alive: false, timeout: Some(Duration { secs: 10, nanos: 0 }) }), interest=Read\r\nTRACE:hyper::http::conn: on_writable <- Http1(Http1 { reading: Parse, writing: Chunk(Chunk { buf: [71, 69, 84, 32, 47, 32, 72, 84, 84, 80, 47, 49, 46, 49, 13, 10, 72, 111, 115, 116, 58, 32, 116, 101, 115, 116, 46, 99, 111, 109, 13, 10, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 58, 32, 99, 108, 111, 115, 101, 13, 10, 13, 10], pos: 0, next: (Encoder { kind: Length(0), prefix: Prefix(None), is_closed: false }, Next::Read(Duration { secs: 10, nanos: 0 })) }), keep_alive: false, timeout: Some(Duration { secs: 10, nanos: 0 }) })\r\nTRACE:hyper::http::conn: scope.reregister(Readable | Writable | Hup)\r\nTRACE:hyper::http::conn: Conn::ready events='Writable', blocked=None\r\nTRACE:hyper::http::conn: on_writable -> Http1(Http1 { reading: Parse, writing: Chunk(Chunk { buf: [71, 69, 84, 32, 47, 32, 72, 84, 84, 80, 47, 49, 46, 49, 13, 10, 72, 111, 115, 116, 58, 32, 116, 101, 115, 116, 46, 99, 111, 109, 13, 10, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 58, 32, 99, 108, 111, 115, 101, 13, 10, 13, 10], pos: 0, next: (Encoder { kind: Length(0), prefix: Prefix(None), is_closed: false }, Next::Read(Duration { secs: 10, nanos: 0 })) }), keep_alive: false, timeout: Some(Duration { secs: 10, nanos: 0 }) })\r\nTRACE:hyper::http::conn: Http1.Chunk on_writable\r\nTRACE:hyper::http::conn: Http1.Chunk wrote=53, done=true\r\nTRACE:hyper::http::conn: State::update state=Http1(Http1 { reading: Parse, writing: Chunk(Chunk { buf: [71, 69, 84, 32, 47, 32, 72, 84, 84, 80, 47, 49, 46, 49, 13, 10, 72, 111, 115, 116, 58, 32, 116, 101, 115, 116, 46, 99, 111, 109, 13, 10, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 58, 32, 99, 108, 111, 115, 101, 13, 10, 13, 10], pos: 53, next: (Encoder { kind: Length(0), prefix: Prefix(None), is_closed: false }, Next::Read(Duration { secs: 10, nanos: 0 })) }), keep_alive: false, timeout: Some(Duration { secs: 10, nanos: 0 }) }), interest=Read\r\nTRACE:hyper::http::conn: on_writable <- Http1(Http1 { reading: Parse, writing: Wait(Encoder { kind: Length(0), prefix: Prefix(None), is_closed: false }), keep_alive: false, timeout: Some(Duration { secs: 10, nanos: 0 }) })\r\nTRACE:hyper::http::conn: scope.reregister(Readable | Hup)\r\nTRACE:hyper::http::conn: Conn::ready events='Readable | Hup', blocked=None\r\nTRACE:hyper::http::conn: Conn::ready got hangup\r\nDEBUG:hyper::http::conn: on_remove\r\nDEBUG:hyper::client: default Handler.on_remove\r\n```\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/hyperium/hyper/issues/comments/261574910","html_url":"https://github.com/hyperium/hyper/issues/957#issuecomment-261574910","issue_url":"https://api.github.com/repos/hyperium/hyper/issues/957","id":261574910,"user":{"login":"jwilm","id":4285147,"avatar_url":"https://avatars.githubusercontent.com/u/4285147?v=3","gravatar_id":"","url":"https://api.github.com/users/jwilm","html_url":"https://github.com/jwilm","followers_url":"https://api.github.com/users/jwilm/followers","following_url":"https://api.github.com/users/jwilm/following{/other_user}","gists_url":"https://api.github.com/users/jwilm/gists{/gist_id}","starred_url":"https://api.github.com/users/jwilm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jwilm/subscriptions","organizations_url":"https://api.github.com/users/jwilm/orgs","repos_url":"https://api.github.com/users/jwilm/repos","events_url":"https://api.github.com/users/jwilm/events{/privacy}","received_events_url":"https://api.github.com/users/jwilm/received_events","type":"User","site_admin":false},"created_at":"2016-11-18T16:27:52Z","updated_at":"2016-11-18T16:27:52Z","body":"Thanks! Sorry for the confusion. "}}
{"actor":{"display_login":"jwilm"}}