Vendor things
This commit is contained in:
parent
5deceec006
commit
977e3c17e5
19434 changed files with 10682014 additions and 0 deletions
313
third-party/vendor/arrayvec/CHANGELOG.md
vendored
Normal file
313
third-party/vendor/arrayvec/CHANGELOG.md
vendored
Normal file
|
|
@ -0,0 +1,313 @@
|
|||
Recent Changes (arrayvec)
|
||||
=========================
|
||||
|
||||
## 0.7.4
|
||||
|
||||
- Add feature zeroize to support the `Zeroize` trait by @elichai
|
||||
|
||||
## 0.7.3
|
||||
|
||||
- Use track_caller on multiple methods like push and similar, for capacity
|
||||
overflows by @kornelski
|
||||
- impl BorrowMut for ArrayString by @msrd0
|
||||
- Fix stacked borrows violations by @clubby789
|
||||
- Update Miri CI by @RalfJung
|
||||
|
||||
## 0.7.2
|
||||
|
||||
- Add `.as_mut_str()` to `ArrayString` by @clarfonthey
|
||||
- Add `remaining_capacity` to `ArrayString` by @bhgomes
|
||||
- Add `zero_filled` constructor by @c410-f3r
|
||||
- Optimize `retain` by @TennyZhuang and @niklasf
|
||||
- Make the following methods `const` by @bhgomes:
|
||||
- len
|
||||
- is_empty
|
||||
- capacity
|
||||
- is_full
|
||||
- remaining_capacity
|
||||
- CapacityError::new
|
||||
|
||||
## 0.7.1
|
||||
|
||||
- Add new ArrayVec methods `.take()` and `.into_inner_unchecked()` by @conradludgate
|
||||
- `clone_from` now uses `truncate` when needed by @a1phyr
|
||||
|
||||
## 0.7.0
|
||||
|
||||
- `fn new_const` is now the way to const-construct arrayvec and arraystring,
|
||||
and `fn new` has been reverted to a regular "non-const" function.
|
||||
This works around performance issue #182, where the const fn version did not
|
||||
optimize well. Change by @bluss with thanks to @rodrimati1992 and @niklasf
|
||||
for analyzing the problem.
|
||||
|
||||
- The deprecated feature flag `unstable-const-fn` was removed, since it's not needed
|
||||
|
||||
- Optimize `.retain()` by using the same algorithm as in std, change by @niklasf,
|
||||
issue #174. Original optimization in Rust std by @oxalica in rust-lang/rust/pull/81126
|
||||
|
||||
## 0.6.1
|
||||
|
||||
- The ``ArrayVec::new`` and ``ArrayString::new`` constructors are properly
|
||||
const fns on stable and the feature flag ``unstable-const-fn`` is now deprecated.
|
||||
by @rodrimati1992
|
||||
|
||||
- Small fix to the capacity check macro by @Xaeroxe
|
||||
- Typo fix in documentation by @cuviper
|
||||
- Small code cleanup by @bluss
|
||||
|
||||
## 0.6.0
|
||||
|
||||
- The **const generics** release 🎉. Arrayvec finally implements what it
|
||||
wanted to implement, since its first version: a vector backed by an array,
|
||||
with generic parameters for the arbitrary element type *and* backing array
|
||||
capacity.
|
||||
|
||||
The New type syntax is `ArrayVec<T, CAP>` where `CAP` is the arrayvec capacity.
|
||||
For arraystring the syntax is `ArrayString<CAP>`.
|
||||
|
||||
Length is stored internally as u32; this limits the maximum capacity. The size
|
||||
of the `ArrayVec` or `ArrayString` structs for the same capacity may grow
|
||||
slightly compared with the previous version (depending on padding requirements
|
||||
for the element type). Change by @bluss.
|
||||
|
||||
- Arrayvec's `.extend()` and `FromIterator`/`.collect()` to arrayvec now
|
||||
**panic** if the capacity of the arrayvec is exceeded. Change by @bluss.
|
||||
|
||||
- Arraystring now implements `TryFrom<&str>` and `TryFrom<fmt::Arguments>` by
|
||||
@c410-f3r
|
||||
|
||||
- Minimum supported rust version is Rust 1.51
|
||||
|
||||
## 0.5.2
|
||||
|
||||
- Add `is_empty` methods for ArrayVec and ArrayString by @nicbn
|
||||
- Implement `TryFrom<Slice>` for ArrayVec by @paulkernfeld
|
||||
- Add `unstable-const-fn` to make `new` methods const by @m-ou-se
|
||||
- Run miri in CI and a few related fixes by @RalfJung
|
||||
- Fix outdated comment by @Phlosioneer
|
||||
- Move changelog to a separate file by @Luro02
|
||||
- Remove deprecated `Error::description` by @AnderEnder
|
||||
- Use pointer method `add` by @hbina
|
||||
|
||||
## 0.5.1
|
||||
|
||||
- Add `as_ptr`, `as_mut_ptr` accessors directly on the `ArrayVec` by @tbu-
|
||||
(matches the same addition to `Vec` which happened in Rust 1.37).
|
||||
- Add method `ArrayString::len` (now available directly, not just through deref to str).
|
||||
- Use raw pointers instead of `&mut [u8]` for encoding chars into `ArrayString`
|
||||
(uninit best practice fix).
|
||||
- Use raw pointers instead of `get_unchecked_mut` where the target may be
|
||||
uninitialized everywhere relevant in the ArrayVec implementation
|
||||
(uninit best practice fix).
|
||||
- Changed inline hints on many methods, mainly removing inline hints
|
||||
- `ArrayVec::dispose` is now deprecated (it has no purpose anymore)
|
||||
|
||||
## 0.4.12
|
||||
|
||||
- Use raw pointers instead of `get_unchecked_mut` where the target may be
|
||||
uninitialized everywhere relevant in the ArrayVec implementation.
|
||||
|
||||
## 0.5.0
|
||||
|
||||
- Use `MaybeUninit` (now unconditionally) in the implementation of
|
||||
`ArrayVec`
|
||||
- Use `MaybeUninit` (now unconditionally) in the implementation of
|
||||
`ArrayString`
|
||||
- The crate feature for serde serialization is now named `serde`.
|
||||
- Updated the `Array` trait interface, and it is now easier to use for
|
||||
users outside the crate.
|
||||
- Add `FromStr` impl for `ArrayString` by @despawnerer
|
||||
- Add method `try_extend_from_slice` to `ArrayVec`, which is always
|
||||
effecient by @Thomasdezeeuw.
|
||||
- Add method `remaining_capacity` by @Thomasdezeeuw
|
||||
- Improve performance of the `extend` method.
|
||||
- The index type of zero capacity vectors is now itself zero size, by
|
||||
@clarfon
|
||||
- Use `drop_in_place` for truncate and clear methods. This affects drop order
|
||||
and resume from panic during drop.
|
||||
- Use Rust 2018 edition for the implementation
|
||||
- Require Rust 1.36 or later, for the unconditional `MaybeUninit`
|
||||
improvements.
|
||||
|
||||
## Older releases
|
||||
|
||||
- 0.4.11
|
||||
|
||||
- In Rust 1.36 or later, use newly stable `MaybeUninit`. This extends the
|
||||
soundness work introduced in 0.4.9, we are finally able to use this in
|
||||
stable. We use feature detection (build script) to enable this at build
|
||||
time.
|
||||
|
||||
- 0.4.10
|
||||
|
||||
- Use `repr(C)` in the `union` version that was introduced in 0.4.9, to
|
||||
allay some soundness concerns.
|
||||
|
||||
- 0.4.9
|
||||
|
||||
- Use `union` in the implementation on when this is detected to be supported
|
||||
(nightly only for now). This is a better solution for treating uninitialized
|
||||
regions correctly, and we'll use it in stable Rust as soon as we are able.
|
||||
When this is enabled, the `ArrayVec` has no space overhead in its memory
|
||||
layout, although the size of the vec should not be relied upon. (See [#114](https://github.com/bluss/arrayvec/pull/114))
|
||||
- `ArrayString` updated to not use uninitialized memory, it instead zeros its
|
||||
backing array. This will be refined in the next version, since we
|
||||
need to make changes to the user visible API.
|
||||
- The `use_union` feature now does nothing (like its documentation foretold).
|
||||
|
||||
|
||||
- 0.4.8
|
||||
|
||||
- Implement Clone and Debug for `IntoIter` by @clarcharr
|
||||
- Add more array sizes under crate features. These cover all in the range
|
||||
up to 128 and 129 to 255 respectively (we have a few of those by default):
|
||||
|
||||
- `array-size-33-128`
|
||||
- `array-size-129-255`
|
||||
|
||||
- 0.4.7
|
||||
|
||||
- Fix future compat warning about raw pointer casts
|
||||
- Use `drop_in_place` when dropping the arrayvec by-value iterator
|
||||
- Decrease mininum Rust version (see docs) by @jeehoonkang
|
||||
|
||||
- 0.3.25
|
||||
|
||||
- Fix future compat warning about raw pointer casts
|
||||
|
||||
- 0.4.6
|
||||
|
||||
- Fix compilation on 16-bit targets. This means, the 65536 array size is not
|
||||
included on these targets.
|
||||
|
||||
- 0.3.24
|
||||
|
||||
- Fix compilation on 16-bit targets. This means, the 65536 array size is not
|
||||
included on these targets.
|
||||
- Fix license files so that they are both included (was fixed in 0.4 before)
|
||||
|
||||
- 0.4.5
|
||||
|
||||
- Add methods to `ArrayString` by @DenialAdams:
|
||||
|
||||
- `.pop() -> Option<char>`
|
||||
- `.truncate(new_len)`
|
||||
- `.remove(index) -> char`
|
||||
|
||||
- Remove dependency on crate odds
|
||||
- Document debug assertions in unsafe methods better
|
||||
|
||||
- 0.4.4
|
||||
|
||||
- Add method `ArrayVec::truncate()` by @niklasf
|
||||
|
||||
- 0.4.3
|
||||
|
||||
- Improve performance for `ArrayVec::extend` with a lower level
|
||||
implementation (#74)
|
||||
- Small cleanup in dependencies (use no std for crates where we don't need more)
|
||||
|
||||
- 0.4.2
|
||||
|
||||
- Add constructor method `new` to `CapacityError`.
|
||||
|
||||
- 0.4.1
|
||||
|
||||
- Add `Default` impl to `ArrayString` by @tbu-
|
||||
|
||||
- 0.4.0
|
||||
|
||||
- Reformed signatures and error handling by @bluss and @tbu-:
|
||||
|
||||
- `ArrayVec`'s `push, insert, remove, swap_remove` now match `Vec`'s
|
||||
corresponding signature and panic on capacity errors where applicable.
|
||||
- Add fallible methods `try_push, insert` and checked methods
|
||||
`pop_at, swap_pop`.
|
||||
- Similar changes to `ArrayString`'s push methods.
|
||||
|
||||
- Use a local version of the `RangeArgument` trait
|
||||
- Add array sizes 50, 150, 200 by @daboross
|
||||
- Support serde 1.0 by @daboross
|
||||
- New method `.push_unchecked()` by @niklasf
|
||||
- `ArrayString` implements `PartialOrd, Ord` by @tbu-
|
||||
- Require Rust 1.14
|
||||
- crate feature `use_generic_array` was dropped.
|
||||
|
||||
- 0.3.23
|
||||
|
||||
- Implement `PartialOrd, Ord` as well as `PartialOrd<str>` for
|
||||
`ArrayString`.
|
||||
|
||||
- 0.3.22
|
||||
|
||||
- Implement `Array` for the 65536 size
|
||||
|
||||
- 0.3.21
|
||||
|
||||
- Use `encode_utf8` from crate odds
|
||||
- Add constructor `ArrayString::from_byte_string`
|
||||
|
||||
- 0.3.20
|
||||
|
||||
- Simplify and speed up `ArrayString`’s `.push(char)`-
|
||||
|
||||
- 0.3.19
|
||||
|
||||
- Add new crate feature `use_generic_array` which allows using their
|
||||
`GenericArray` just like a regular fixed size array for the storage
|
||||
of an `ArrayVec`.
|
||||
|
||||
- 0.3.18
|
||||
|
||||
- Fix bounds check in `ArrayVec::insert`!
|
||||
It would be buggy if `self.len() < index < self.capacity()`. Take note of
|
||||
the push out behavior specified in the docs.
|
||||
|
||||
- 0.3.17
|
||||
|
||||
- Added crate feature `use_union` which forwards to the nodrop crate feature
|
||||
- Added methods `.is_full()` to `ArrayVec` and `ArrayString`.
|
||||
|
||||
- 0.3.16
|
||||
|
||||
- Added method `.retain()` to `ArrayVec`.
|
||||
- Added methods `.as_slice(), .as_mut_slice()` to `ArrayVec` and `.as_str()`
|
||||
to `ArrayString`.
|
||||
|
||||
- 0.3.15
|
||||
|
||||
- Add feature std, which you can opt out of to use `no_std` (requires Rust 1.6
|
||||
to opt out).
|
||||
- Implement `Clone::clone_from` for ArrayVec and ArrayString
|
||||
|
||||
- 0.3.14
|
||||
|
||||
- Add `ArrayString::from(&str)`
|
||||
|
||||
- 0.3.13
|
||||
|
||||
- Added `DerefMut` impl for `ArrayString`.
|
||||
- Added method `.simplify()` to drop the element for `CapacityError`.
|
||||
- Added method `.dispose()` to `ArrayVec`
|
||||
|
||||
- 0.3.12
|
||||
|
||||
- Added ArrayString, a fixed capacity analogy of String
|
||||
|
||||
- 0.3.11
|
||||
|
||||
- Added trait impls Default, PartialOrd, Ord, Write for ArrayVec
|
||||
|
||||
- 0.3.10
|
||||
|
||||
- Go back to using external NoDrop, fixing a panic safety bug (issue #3)
|
||||
|
||||
- 0.3.8
|
||||
|
||||
- Inline the non-dropping logic to remove one drop flag in the
|
||||
ArrayVec representation.
|
||||
|
||||
- 0.3.7
|
||||
|
||||
- Added method .into_inner()
|
||||
- Added unsafe method .set_len()
|
||||
Loading…
Add table
Add a link
Reference in a new issue