summaryrefslogtreecommitdiff
path: root/ext/http
AgeCommit message (Collapse)Author
2022-01-06chore: forward 1.17.2 to main (#13295)Bartek Iwańczuk
2021-12-22chore: merge v1.17.1 into main (#13184)Bartek Iwańczuk
2021-12-16chore: release crates for v1.17.0 (#13112)Bartek Iwańczuk
2021-12-04chore: merge v1.16.4 into main (#12984)Luca Casonato
2021-11-24chore: merge v1.16.3 into main (#12892)Bert Belder
2021-11-17chore(ext/http): deno fmt (#12798)Bert Belder
2021-11-17chore: bump crates for 1.16.2 (#12792)David Sherret
2021-11-11chore: bump crate versions for 1.16.1 (#12729)Luca Casonato
2021-11-10refactor(ext/http): rewrite hyper integration and fix bug (#12732)Bert Belder
Fixes: #12193 Fixes: #12251 Closes: #12714
2021-11-09chore: bump crate versions for 1.16.0 (#12706)Luca Casonato
2021-11-09Revert "refactor(ext/http): rewrite hyper integration and fix bug (#12332)" ↵Luca Casonato
(#12704) This reverts commit 5b1e537446454f6332de44adbeb6a15ff072c2fa.
2021-11-08refactor(ext/http): rewrite hyper integration and fix bug (#12332)Bert Belder
Fixes: #12193
2021-11-02chore: update to Rust edition 2021 (#12578)Bartek Iwańczuk
2021-10-26fix(ext/http): allow multiple values in upgrade header for websocket (#12551)Leo K
Co-authored-by: Aaron O'Mullan <aaron.omullan@gmail.com>
2021-10-26perf(http): encode string bodies in op-layer (#12451)Aaron O'Mullan
Using serde_v8's StringOrBuffer
2021-10-25chore: bump crate version for 1.15.3 (#12531)Yoshiya Hinosawa
2021-10-18chore: release crates for v1.15.2 (#12478)Bartek Iwańczuk
2021-10-17docs(ext/http): fix typo in http/lib.rs (#12466)Ikko Ashimine
2021-10-12chore: bump crate version for 1.15.0 (#12406)Satya Rohith
2021-10-11fix(http): don't expose body on GET/HEAD requests (#12260)Luca Casonato
GET/HEAD requests can't have bodies according to `fetch` spec. This commit changes the HTTP server to hide request bodies for requests with GET or HEAD methods.
2021-10-05chore: various op cleanup (#12329)Leo K
2021-10-05chore: merge v1.14.3 into main (#12327)Bartek Iwańczuk
2021-09-29fix(ext/http): merge identical if/else branches (#12269)mynane
2021-09-28chore: bump crate versions for 1.14.2 (#12253)Aaron O'Mullan
2021-09-27perf(fetch): optimize newInnerRequest blob url check (#12245)Aaron O'Mullan
Avoid "blob:" prefix check on requests built in the http module since those can never be blob objects Reduces cost of `newInnerRequest()` from 20ms to 0.1ms in my profiled run on ~2.5M reqs
2021-09-26fix(ext/http): include port number in h2 urls (#12181)Ben Noordhuis
2021-09-25fix(http): panic when responding to a closed conn (#12216)Aaron O'Mullan
Our oneshot receiver in `HyperService::call` would unwrap and panic, the `.await` on the oneshot receiver happens when the sender is dropped. The sender is dropped in `op_http_response` because: 1. We take `ResponseSenderResource` 2. Then get `ConnResource` and early exit on failure (conn already closed) 3. The taken sender then gets dropped in this early exit before any response is sent over the channel Fallbacking to returning a dummy response to hyper seems to be a fine quickfix
2021-09-25fix(ext/http): fortify "is websocket?" check (#12179)Ben Noordhuis
Check for expected headers more rigorously and check that it's a HTTP/1.1 GET request. The logic mirrors what Deno Deploy and the tungstenite crate do. The presence of "Sec-Websocket-Version: 13" is now also enforced. I don't expect that to break anything: conforming clients already send it and tungstenite can't talk to older clients anyway. The new code is more efficient due to heap-allocating less and aligns more closely with the checks in ext/http/01_http.js now.
2021-09-22chore: bump crate versions for 1.14.1 (#12172)Kitson Kelly
2021-09-14chore: bump crate versions for 0.14 (#12072)David Sherret
2021-09-11refactor: use Deno.core.tryClose (#11980)Bartek Iwańczuk
2021-09-10perf(ext/http): optimize auto cleanup of request resource (#11978)Bert Belder
Fixes #11963.
2021-09-08chore: add README to ext/http/ (#11958)Bartek Iwańczuk
2021-09-08chore: release deno_http 0.8.0 (#11956)Bartek Iwańczuk
2021-09-08fix(ext/http): resource leak if request body is not consumed (#11955)Bartek Iwańczuk
2021-09-02chore: update dependencies (#11856)Luca Casonato
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2021-08-31fix: move unstable declarations to deno.unstable (#11876)Luca Casonato
2021-08-25fix(ext/http): websocket upgrade header check (#11830)Dayan C. Galiazzi
2021-08-23chore: release crates for 1.13.2 (#11820)David Sherret
2021-08-23fix(ext/http): resource leak on HttpConn.close() (#11805)Bartek Iwańczuk
This commit adds tracking of resources that are related to "HttpConn" so they can be closed automatically when closing the connection.
2021-08-16chore: release crates for 1.13.1 (#11729)David Sherret
2021-08-16test(ext/http): add test for incomplete HTTP message and fix resource leak ↵Bartek Iwańczuk
(#11717) This commit adds a test case for "Http: connection closed before message completed" error as well as fixing an edge with resource leak when the error is raised.
2021-08-15refactor(ops): return BadResource errors in ResourceTable calls (#11710)Aaron O'Mullan
* refactor(ops): return BadResource errors in ResourceTable calls Instead of relying on callers to map Options to Results via `.ok_or_else(bad_resource_id)` at over 176 different call sites ...
2021-08-15perf(ext/http): faster req_url string assembly (#11711)Aaron O'Mullan
This stood out on a flamegraph, it took up ~1% of a profiled loadtest of `cli/bench/deno_http_native.js`
2021-08-14cleanup(ext/http): simplify cookie header handling (#11704)Aaron O'Mullan
cleanup(ext/http): simplify cookie header handling Use `Vec::join` instead of essentially reimplementing it. There should be no meaningful performance delta
2021-08-14cleanup(ext/http): simplify op_http_request_next (#11691)Aaron O'Mullan
* cleanup(ext/http): simplify op_http_request_next Keep op_http_request_next's high-level logic simple, factor out NextRequestResponse building to prepare_next_request() for improved readability & maintainability * cleanup(ext/http): break prepare_next_request() into meaningful sub-funcs
2021-08-13fix(http/ws): support multiple options in connection header (#11675)Leo K
Co-authored-by: Luca Casonato <hello@lcas.dev>
2021-08-13fix(ext/http): remove unwrap() when HTTP conn errors (#11674)Bartek Iwańczuk
2021-08-11Rename extensions/ directory to ext/ (#11643)Ryan Dahl