Sean McArthur
6fdb7391ce
v0.5.6
v0.5.6
2020-07-13 17:58:36 -07:00
Sean McArthur and GitHub
025bec2954
Move loom to dev-dependencies ( #416 )
2020-07-13 16:55:47 -07:00
Taiki Endo and GitHub
2d51809bd7
Fix CI failure on Windows ( #415 )
...
--no-self-update is necessary because the windows environment cannot
self-update rustup.exe.
2020-07-13 12:33:30 +09:00
Taiki Endo and GitHub
7daa7fe053
Change default lint level to warning and deny warnings in CI ( #397 )
2020-07-09 09:12:39 -07:00
Sean Leather and GitHub
972f538b7e
docs: Clarify what BytesMut is ( #375 )
2020-07-09 09:11:45 -07:00
Bryan Donlan and Sean McArthur
81550da474
BytesMut: Reuse buffer when data fully consumed via Buf
...
Closes #412
2020-07-08 15:28:36 -07:00
Tomasz Miąsko and GitHub
90e7e650c9
Use ThreadSanitizer CI setup that avoids false positives ( #406 )
2020-07-07 01:28:47 +09:00
Juan Aguilar and GitHub
bc4a6d56f4
Add inline attribute to BytesMut::as_mut ( #410 )
2020-07-05 17:43:26 -07:00
Juan Aguilar and GitHub
3603cec7c2
Add inline attribute to BytesMut::set_len ( #408 )
2020-07-03 16:47:32 -07:00
Tomasz Miąsko and GitHub
5cde647c29
Remove unnecessary synchronization when cloning shared representation ( #404 )
2020-07-02 18:55:16 -07:00
Sean McArthur
008d3e508e
v0.5.5
v0.5.5
2020-06-18 14:30:11 -07:00
Mikhail Zabaluev and GitHub
a3304e8b8b
Remove outdated info on BytesMut::with_capacity ( #394 )
...
Remove a remark from the doc that pertained to the inline
layout and is no longer true.
2020-05-27 22:02:45 -07:00
Taiki Endo and GitHub
64fe7e10ab
Migrate CI to GitHub Actions ( #392 )
2020-05-25 01:41:45 +09:00
Taiki Endo and GitHub
e9877e7a3d
Deny warnings for doc tests ( #391 )
2020-05-24 06:30:50 +09:00
Kirill Fomichev and GitHub
08ec01d1e7
Fix reference in Take docs ( #383 )
2020-05-22 14:33:06 +09:00
Taiki Endo and GitHub
1fbf83816b
Format with rustfmt ( #389 )
...
* Format with rustfmt
* Add rustfmt check to CI
2020-05-22 13:17:30 +09:00
Sean McArthur and GitHub
5e93fa4c6b
Update to loom v0.3 ( #381 )
2020-05-22 11:23:22 +09:00
Cheng XU and GitHub
9f40abc12a
Allow using serde feature in no_std environment ( #385 )
...
When `serde` is used, it would enable its default feature `std`.
This of course breaks no_std build.
Fix this by disabling serde's default features. This should work for
both serde + std and serde + no_std case.
2020-05-22 11:19:46 +09:00
Cheng XU and GitHub
e8fa2511ff
Fix tests for no_std build ( #384 )
...
This fixes `cargo test --no-default-features`.
2020-05-22 11:18:20 +09:00
Taiki Endo and GitHub
fa464ca483
Fix CI failure on MacOS ( #388 )
...
macOS-10.13 has been removed.
2020-05-22 10:54:52 +09:00
Tim Hambourger and Sean McArthur
b4ebe8432e
Fix #354 -- Make advance_mut impl of BufMut for Vec<u8> panic if cnt > remaining
2020-03-25 12:30:15 -07:00
Tim Hambourger and Sean McArthur
8bbe9dd87b
Fix #352 -- Make freeze respect the start offset for BytesMuts in Vec mode
2020-03-24 11:14:16 -07:00
Sean McArthur
fe6e673864
v0.5.4
v0.5.4
2020-01-23 10:41:50 -08:00
Stepan Koltsov and Sean McArthur
f330ef6c4d
Do not panic on Bytes::slice_ref on empty slice ( #355 )
...
Use case:
```
let bytes: Bytes = ...
let subbytes = bytes.slice(a..b); // where a == b
let slice = &subbytes[..];
let slice_bytes = bytes.slice_ref(slice);
```
Last line should not panic, because `slice` object is derived from
the original `Bytes` object.
Before this commit it panics, because `Bytes::slice` returns a fresh
`Bytes` object when `begin == end`.
2020-01-23 10:29:42 -08:00
Sean McArthur and GitHub
87b75cce16
Disable loom on Windows ( #366 )
2020-01-23 10:10:15 -08:00
南浦月 and Sean McArthur
3853a1fac4
merge hex & debug into fmt ( #357 )
2020-01-23 10:08:40 -08:00
Nikhil Benesch and Sean McArthur
f9ebf74091
Minor documentation fixes ( #351 )
...
* Remove incorrect comment about behavior of put_slice
* Improve grammar and clarity of BytesMut documentation
2020-01-23 10:06:49 -08:00
Andrew Tunnell-Jones and Sean McArthur
939a5edf3d
Fix reversed arguments in PartialOrd impls ( #358 )
2020-01-23 10:06:00 -08:00
John-John Tedro and Sean McArthur
788cb158ce
Assert that the alignment of Shared is appropriate ( #362 )
2020-01-23 10:05:20 -08:00
Stepan Koltsov and Sean McArthur
ab028eb6a8
rebuild_boxed_slice instead of rebuild_boxed_vec ( #364 )
...
"Promotable" `Bytes` object is constructed from disassembling a
boxed slice object, not a vec.
Thus we should reassemble data into a boxed slice, not into a vec.
Although, it does not create any problems in practice (`Box<[u8]>`
is allocated exactly the same way as `Vec<u8>`), technically it is
a violation of `Vec::from_raw_parts` spec which says that a pointer
"needs to have been previously allocated via `String`/`Vec<T>`".
2020-01-23 10:04:13 -08:00
Sean McArthur and Carl Lerche
e0eebde993
Fix Bytes::truncate losing the original Vec's capacity ( #361 )
2020-01-22 16:37:53 -08:00
Stepan Koltsov and Sean McArthur
729bc7c208
Make Bytes::new const fn ( #356 )
2020-01-09 14:27:28 -08:00
Sean McArthur and Carl Lerche
8695c08bcc
Improve assertion messages ( #349 )
2020-01-07 21:29:36 -08:00
Thayne McCombs and Sean McArthur
39b6646e66
Re-add impl From<BytesMut> for Bytes ( #348 )
2019-12-19 11:09:14 -08:00
Sean McArthur and GitHub
c7cf716180
Fix Bytes when Vec pointer's LSB is set ( #346 )
...
This separates the `SharedVtable` into 3:
- `PromotableEvenVtable`: The original `SharedVtable`, which will
promote the `Vec` to `Shared` on the first clone, and is selected when
the `Vec`'s pointer has the LSB unset.
- `PromotableOddVtable`: Similar to the `PromotableEvenVtable`, but
selected when the `Vec`'s pointer has the LSB set. This vtable differs
in the masking used when reconstructing the `Vec`.
- `SharedVtable`: This no longer checks if its current kind is `VEC` or
`ARC`, and is only created by the "promotable" vtables.
This also adds a test using an "odd" global allocator that purposefully
bumps all pointers with alignment of 1.
Closes #343
2019-12-17 13:23:15 -08:00
Sean McArthur
8ae3bb2104
v0.5.3
v0.5.3
2019-12-12 12:00:21 -08:00
Sean McArthur
8733f74d59
Assert the LSB is 0 when converting Vec into Bytes
2019-12-12 11:46:51 -08:00
Steven Fackler and Sean McArthur
17a8ac91e0
Fix conversion of empty vectors to Bytes
...
Closes #340
2019-12-12 08:33:07 -08:00
Sean McArthur
a7fc5274ad
Make Deref impls of Buf and BufMut forward more methods
2019-12-10 13:35:26 -08:00
Sean McArthur and Carl Lerche
7e80f3b646
Optimize BufMut for Vec and BytesMut ( #338 )
2019-12-10 13:30:49 -08:00
Sean McArthur
a4908213a6
Add must_use to split, split_off, and split_to
2019-12-04 12:39:48 -08:00
Mikhail Zabaluev and Carl Lerche
af606aab9b
Fix regression in Bytes::truncate ( #333 )
...
When the length to truncate is greater than the buffer's current
length, do nothing instead of clearing the contents.
2019-12-01 14:00:42 -08:00
Sean McArthur
98951ba26c
v0.5.2
v0.5.2
2019-11-27 12:59:28 -08:00
Steven Fackler and Sean McArthur
171cffa505
Update README.md ( #320 )
2019-11-27 12:06:33 -08:00
Sean McArthur and Carl Lerche
a642e1c075
Add accessors to Limit combinator ( #325 )
2019-11-26 18:08:39 -08:00
Steven Fackler and Carl Lerche
3cf91283f8
chore: prepare v0.5.1 release ( #322 )
v0.5.1
2019-11-26 14:15:57 -08:00
Steven Fackler and Carl Lerche
1db67b4a87
doc: fix BytesMut growth documentation. ( #321 )
2019-11-25 11:40:40 -08:00
Carl Lerche and GitHub
b7c1f2a135
prepare v0.5.0 release ( #319 )
v0.5.0
2019-11-25 11:19:30 -08:00
Sean McArthur and Carl Lerche
cdd9fc09cd
Export public the combinator types ( #318 )
2019-11-25 10:47:37 -08:00
Sean McArthur and Carl Lerche
44fb206148
add BufMutExt::limit ( #309 )
...
This type is the counterpart to BufExt::take. It limits how many bytes
some `BufMut` can actually be filled with.
2019-11-20 15:10:30 -08:00