Bug 1893155 - Part 6: Correct constant for minimum epoch day. r=spidermonkey-reviewer...
[gecko.git] / third_party / rust / http / CHANGELOG.md
blobc5bc636db346948711d33bb70dc0c0f52c371f94
1 # 0.2.9 (February 17, 2023)
3 * Add `HeaderName` constants for `cache-status` and `cdn-cache-control`.
4 * Implement `Hash` for `PathAndQuery`.
5 * Re-export `HeaderName` at crate root.
7 # 0.2.8 (June 6, 2022)
9 * Fix internal usage of uninitialized memory to use `MaybeUninit` inside `HeaderName`.
11 # 0.2.7 (April 28, 2022)
13 * MSRV bumped to `1.49`.
14 * Add `extend()` method to `Extensions`.
15 * Add `From<Authority>` and `From<PathAndQuery>` impls for `Uri`.
16 * Make `HeaderName::from_static` a `const fn`.
18 # 0.2.6 (December 30, 2021)
20 * Upgrade internal `itoa` dependency to 1.0.
22 # 0.2.5 (September 21, 2021)
24 * Add `is_empty()` and `len()` methods to `Extensions`.
25 * Add `version_ref()` method to `request::Builder`.
26 * Implement `TryFrom<Vec<u8>>` and `TryFrom<String>` for `Authority`, `Uri`, `PathAndQuery`, and `HeaderName`.
27 * Make `HeaderValue::from_static` a `const fn`.
29 # 0.2.4 (April 4, 2021)
31 * Fix `Uri` parsing to allow `{`, `"`, and `}` in paths.
33 # 0.2.3 (January 7, 2021)
35 * Upgrade internal (private) `bytes` dependency to 1.0.
37 # 0.2.2 (December 14, 2020)
39 * Fix (potential double) panic of (`HeaderMap`) `OccupiedEntry::remove_entry` and
40   `remove_entry_mult` when multiple values are present. ([#446], [#449] dekellum)
41 * Safety audits of (priv) `ByteStr` and refactor of `Authority` ([#408], [#414] sbosnick)
42 * Fix `HeaderName` to error instead of panic when input is too long ([#432] [#433] acfoltzer)
43 * Allow `StatusCode` to encode values 100-999 without error. Use of the
44   unclassified range 600-999 remains discouraged. ([#144], [#438], [#443] quininer dekellum)
45 * Add `String` and `&String` fallible conversions to `PathAndQuery` ([#450] mkindahl)
46 * Fix `Authority` (and `Uri`) to error instead of panic on unbalanced brackets
47   ([#435], [#445] aeryz)
49 # 0.2.1 (March 25, 2020)
51 * Add `extensions_ref` and `extensions_mut` to `request::Builder` and `response::Builder`.
53 # 0.2.0 (December 2, 2019)
55 * Add `Version::HTTP_3` constant.
56 * Add `HeaderValue::from_maybe_shared`, `HeaderValue::from_maybe_shared_unchecked`, `Uri::from_maybe_shared`, `Authority::from_maybe_shared`, and `PathAndQuery::from_maybe_shared`.
57 * Change `request::Builder`, `response::Builder`, and `uri::Builder` to use by-value methods instead of by-ref.
58 * Change from `HttpTryFrom` trait to `std::convert::TryFrom`.
59 * Change `HeaderMap::entry` to no longer return a `Result`.
60 * Change `HeaderMap::drain` iterator to match the behavior of `IntoIter`.
61 * Change `Authority::port` to return an `Option<Port>` instead of `Option<u16>`.
62 * Change `Uri::scheme` to return `Option<&Scheme>` instead of `Option<&str>`.
63 * Change `Uri::authority` to return `Option<&Authority>` instead of `Option<&str>`.
64 * Remove `InvalidUriBytes`, `InvalidHeaderNameBytes`, and `InvalidHeaderValueBytes` error types.
65 * Remove `HeaderValue::from_shared`, `HeaderValue::from_shared_unchecked`, `Uri::from_shared`, `Authority::from_shared`, `Scheme::from_shared`, and `PathAndQuery::from_shared`.
66 * Remove `Authority::port_part`.
67 * Remove `Uri::scheme_part` and `Uri::authority_part`.
69 # 0.1.20 (November 26, 2019)
71 * Fix possible double-free if `header::Drain` iterator is `std::mem::forgot`en (#357).
72 * Fix possible data race if multiple `header::ValueDrain`s are iterated on different threads (#362).
73 * Fix `HeaderMap::reserve` capacity overflows (#360).
74 * Fix parsing long authority-form `Uri`s (#351).
76 # 0.1.19 (October 15, 2019)
78 * Allow `%` in IPv6 addresses in `Uri` (#343).
80 # 0.1.18 (July 26, 2019)
82 * Fix compilation of `HeaderName` parsing on WASM targets (#324).
83 * Implement `HttpTryFrom<HashMap>` for `HeaderMap` (#326).
84 * Export `http::header::HeaderValue` as `http::HeaderValue`.
86 # 0.1.17 (April 5, 2019)
88 * Add `Error::inner_ref()` to view the kind of error (#303)
89 * Add `headers_ref()` and `headers_mut()` methods to `request::Builder` and `response::Builder` (#293)
91 # 0.1.16 (February 19, 2019)
93 * Fix `Uri` to permit more characters in the `path` (#296)
95 # 0.1.15 (January 22, 2019)
97 * Fix `Uri::host()` to include brackets of IPv6 literals (#292)
98 * Add `scheme_str` and `port_u16` methods to `Uri` (#287)
99 * Add `method_ref`, `uri_ref`, and `headers_ref` to `request::Builder` (#284)
101 # 0.1.14 (November 21, 2018)
103 * Add `Port` struct (#252, #255, #265)
104 * Introduce `Uri` builder (#219)
105 * Empty `Method` no longer considered valid (#262)
106 * Fix `Uri` equality when terminating question mark is present (#270)
107 * Allow % character in userinfo (#269)
108 * Support additional tokens for header names (#271)
109 * Export `http::headers::{IterMut, ValuesMut}` (#278)
111 # 0.1.13 (September 14, 2018)
113 * impl `fmt::Display` for `HeaderName` (#249)
114 * Fix `uri::Authority` parsing when there is no host after an `@` (#248)
115 * Fix `Uri` parsing to allow more characters in query strings (#247)
117 # 0.1.12 (September 7, 2018)
119 * Fix `HeaderValue` parsing to allow HTABs (#244)
121 # 0.1.11 (September 5, 2018)
123 * Add `From<&Self>` for `HeaderValue`, `Method`, and `StatusCode` (#238)
124 * Add `Uri::from_static` (#240)
126 # 0.1.10 (August 8, 2018)
128 * `impl HttpTryFrom<String>` for HeaderValue (#236)
130 # 0.1.9 (August 7, 2018)
132 * Fix double percent encoding (#233)
133 * Add additional HttpTryFrom impls (#234)
135 # 0.1.8 (July 23, 2018)
137 * Add fuller set of `PartialEq` for `Method` (#221)
138 * Reduce size of `HeaderMap` by using `Box<[Entry]>` instea of `Vec` (#224)
139 * Reduce size of `Extensions` by storing as `Option<Box<AnyMap>>` (#227)
140 * Implement `Iterator::size_hint` for most iterators in `header` (#226)
142 # 0.1.7 (June 22, 2018)
144 * Add `From<uN> for HeaderValue` for most integer types (#218).
145 * Add `Uri::into_parts()` inherent method (same as `Parts::from(uri)`) (#214).
146 * Fix converting `Uri`s in authority-form to `Parts` and then back into `Uri` (#216).
147 * Fix `Authority` parsing to reject multiple port sections (#215).
148 * Fix parsing 1 character authority-form `Uri`s into illegal forms (#220).
150 # 0.1.6 (June 13, 2018)
152 * Add `HeaderName::from_static()` constructor (#195).
153 * Add `Authority::from_static()` constructor (#186).
154 * Implement `From<HeaderName>` for `HeaderValue` (#184).
155 * Fix duplicate keys when iterating over `header::Keys` (#201).
157 # 0.1.5 (February 28, 2018)
159 * Add websocket handshake related header constants (#162).
160 * Parsing `Authority` with an empty string now returns an error (#164).
161 * Implement `PartialEq<u16>` for `StatusCode` (#153).
162 * Implement `HttpTryFrom<&Uri>` for `Uri` (#165).
163 * Implement `FromStr` for `Method` (#167).
164 * Implement `HttpTryFrom<String>` for `Uri` (#171).
165 * Add `into_body` fns to `Request` and `Response` (#172).
166 * Fix `Request::options` (#177).
168 # 0.1.4 (January 4, 2018)
170 * Add PathAndQuery::from_static (#148).
171 * Impl PartialOrd / PartialEq for Authority and PathAndQuery (#150).
172 * Add `map` fn to `Request` and `Response` (#151).
174 # 0.1.3 (December 11, 2017)
176 * Add `Scheme` associated consts for common protos.
178 # 0.1.2 (November 29, 2017)
180 * Add Uri accessor for scheme part.
181 * Fix Uri parsing bug (#134)
183 # 0.1.1 (October 9, 2017)
185 * Provide Uri accessors for parts (#129)
186 * Add Request builder helpers. (#123)
187 * Misc performance improvements (#126)
189 # 0.1.0 (September 8, 2017)
191 * Initial release.
193 [#144]: https://github.com/hyperium/http/issues/144
194 [#408]: https://github.com/hyperium/http/pull/408
195 [#414]: https://github.com/hyperium/http/pull/414
196 [#432]: https://github.com/hyperium/http/issues/432
197 [#433]: https://github.com/hyperium/http/pull/433
198 [#438]: https://github.com/hyperium/http/pull/438
199 [#443]: https://github.com/hyperium/http/pull/443
200 [#446]: https://github.com/hyperium/http/issues/446
201 [#449]: https://github.com/hyperium/http/pull/449
202 [#450]: https://github.com/hyperium/http/pull/450
203 [#435]: https://github.com/hyperium/http/issues/435
204 [#445]: https://github.com/hyperium/http/pull/445