* **`0.14.6`** * Add an optional `Zeroize` impl for `GenericArray` (#126 and #112) * Cleanup some unsafe (#125) and typos (#114) * Use `include` in `Cargo.toml` to reduce package size * **`0.14.5`** * Fix unsoundness behavior in `GenericArrayIter::clone` ([#120](https://github.com/fizyk20/generic-array/pull/120)) * **`0.14.4`** * Update `typenum` to `1.12.0` * Make `Drop` a no-op when the inner type does not require `Drop` (using `core::mem::needs_drop`) * **`0.14.3`** * Improve behavior of `GenericArray::from_exact_iter` to assume `ExactIterator`s can lie. * Fix alignment of zero-length `GenericArray`s * Implement `From<&[T; N]> for &GenericArray` and its mutable variant * **`0.14.2`** * Lower MSRV to `1.36.0` without `From<[T; N]>` implementations. * **`0.14.1`** * Fix element conversions in `arr!` macro. * **`0.14.0`** * Replace `Into` implementations with the more general `From`. * Requires minumum Rust version of 1.41.0 * Fix unsoundness in `arr!` macro. * Fix meta variable misuse * Fix Undefined Behavior across the crate by switching to `MaybeUninit` * Improve some documentation and doctests * Add `AsRef<[T; N]>` and `AsMut<[T; N]>` impls to `GenericArray` * Add `Split` impl for `&GenericArray` and `&mut GenericArray` * **`0.13.2`** * Add feature `more_lengths`, which adds more `From`/`Into` implementations for arrays of various lengths. * **`0.13.1`** * Mark `GenericArray` as `#[repr(transparent)]` * Implement `Into<[T; N]>` for `GenericArray` up to N=32 * **`0.13.0`** * Allow `arr!` to be imported with use syntax. * Requires minumum Rust version of 1.30.1 * **`0.12.2`** * Implement `FusedIterator` for `GenericArrayIter` * **`0.12.1`** * Use internal iteration where possible and provide more efficient internal iteration methods. * **`0.12.0`** * Allow trailing commas in `arr!` macro. * **BREAKING**: Serialize `GenericArray` using `serde` tuples, instead of variable-length sequences. This may not be compatible with old serialized data. * **`0.11.0`** * **BREAKING** Redesign `GenericSequence` with an emphasis on use in generic type parameters. * Add `MappedGenericSequence` and `FunctionalSequence` * Implements optimized `map`, `zip` and `fold` for `GenericArray`, `&GenericArray` and `&mut GenericArray` * **BREAKING** Remove `map_ref`, `zip_ref` and `map_slice` * `map_slice` is now equivalent to `GenericArray::from_iter(slice.iter().map(...))` * **`0.10.0`** * Add `GenericSequence`, `Lengthen`, `Shorten`, `Split` and `Concat` traits. * Redefine `transmute` to avert errors. * **`0.9.0`** * Rewrite construction methods to be well-defined in panic situations, correctly dropping elements. * `NoDrop` crate replaced by `ManuallyDrop` as it became stable in Rust core. * Add optimized `map`/`map_ref` and `zip`/`zip_ref` methods to `GenericArray` * **`0.8.0`** * Implement `AsRef`, `AsMut`, `Borrow`, `BorrowMut`, `Hash` for `GenericArray` * Update `serde` to `1.0` * Update `typenum` * Make macro `arr!` non-cloning * Implement `From<[T; N]>` up to `N=32` * Fix #45 * **`0.7.0`** * Upgrade `serde` to `0.9` * Make `serde` with `no_std` * Implement `PartialOrd`/`Ord` for `GenericArray` * **`0.6.0`** * Fixed #30 * Implement `Default` for `GenericArray` * Implement `LowerHex` and `UpperHex` for `GenericArray` * Use `precision` formatting field in hex representation * Add `as_slice`, `as_mut_slice` * Remove `GenericArray::new` in favor of `Default` trait * Add `from_slice` and `from_mut_slice` * `no_std` and `core` for crate. * **`0.5.0`** * Update `serde` * remove `no_std` feature, fixed #19 * **`0.4.0`** * Re-export `typenum` * **`0.3.0`** * Implement `IntoIter` for `GenericArray` * Add `map` method * Add optional `serde` (de)serialization support feature. * **`< 0.3.0`** * Initial implementation in late 2015