bluss
9792502792
0.4.11
2019-07-10 17:24:40 +02:00
bluss
c155b400eb
Merge pull request #127 from bluss/stable-maybe-uninit
...
Use stable MaybeUninit when we can (feature detected)
2019-07-10 17:21:15 +02:00
bluss
93220e55ae
TEST: Update tests for new MaybeUninit usage
...
(Also remove the size check since we can't rely on it, even if we want
to ensure it has no overhead for the bytes case.)
2019-07-10 16:58:11 +02:00
bluss
b56c3b78d0
FEAT: Use stable MaybeUninit when we can (feature detected)
2019-07-10 16:40:50 +02:00
bluss
21661facf8
0.4.10
2018-12-22 20:04:03 +01:00
bluss
06930d27ce
FIX: Remove unused Copy/Clone for MaybeUninit
2018-12-22 19:59:32 +01:00
bluss
85d9a06a62
FIX: Use repr(C) MaybeUninit after discussion with RalfJung
...
We have a recommendation from the unsafe-wg (no rule yet), that
repr(C) for unions should work this way, so that we can cast from the
union type to one of its fields.
2018-12-22 14:25:16 +01:00
bluss
2316b85fbc
0.4.9
2018-12-16 18:02:49 +01:00
bluss
3edc9a6de7
Merge pull request #114 from bluss/maybe-uninit-0.4
...
Implement a "MaybeUninit" and use it conditionally (0.4.x version)
2018-12-16 17:51:59 +01:00
bluss
f0ec3e1398
TEST: Add test that ensures the MaybeUninit impl is used on nightly
2018-12-16 10:46:38 +01:00
bluss
d395a01e7c
FIX: Remove use of uninitialized in ArrayString
...
We can't fix this properly (MaybeUninit with a union) until we change
the user visible API (we need to require that A: Copy.
As a temporary solution for arrayvec version 0.4.*, we use zeroed to
initialize an array of bytes, instead of using uninitialized. This may
have a negative performance impact, but the fix is to upgrade to future
arrayvec 0.5.
2018-12-15 15:12:03 +01:00
bluss
29012231a8
FEAT: Implement a "MaybeUninit" and use it conditionally
...
Use a build script to detect if we can use MaybeUninit or NoDrop.
Enabling unstable features automatically is not ideal, but since it's
a soundness issue we should do it.
Use a MaybeUninit-like union on nightly when we can. We use a feature
detection script in build.rs, so that we also go back to the fallback if
the unstable feature changes in an unexpected way.
We need to continue to use NoDrop for best working stable
implementation, but we eagerly use our union solution where we can,
currently only in nightlies.
Rustc feature probe code written by Josh Stone (cuviper),
taken from num-bigint.
2018-12-15 15:12:03 +01:00
bluss
8f8617b967
TEST: Add test that Some(ArrayVec<[&_;_]>).is_some()
...
This seems like a trivial test, but since it can fail, it shows us that
we don't have a sound implementation yet.
2018-12-15 14:47:19 +01:00
bluss
cc3cb8d282
MAINT: Test the 0.4 branch in travis
2018-12-15 14:35:53 +01:00
bluss
c8d12cecb3
0.4.8
2018-11-25 09:46:33 +01:00
bluss
f5adeab5f5
Merge pull request #109 from bluss/array-sizes-33-255
...
Add all array sizes 33-128 and 129-255 under a feature gate
2018-11-25 09:41:35 +01:00
bluss
d77b93079f
TEST: Add minimal tests for new array sizes
2018-11-25 09:36:22 +01:00
bluss
e355c9eb31
DOC: Hide Array methods on impls
...
These just clutter up the docs. Most important that the users can see
the list of implemented array sizes, not the methods for each of those.
2018-11-25 09:32:29 +01:00
bluss
9d1ede62ea
MAINT: Add Rust 1.22 to travis build
2018-11-25 09:26:01 +01:00
bluss
4dc503e17d
MAINT: Add array sizes to travis build
2018-11-25 09:25:30 +01:00
bluss
50728e4cda
DOC: Add doc for additional array features flags
2018-11-25 09:24:16 +01:00
bluss
f1d73f4feb
FEAT: Add array sizes 33 to 128 and 129 to 255 under feature flags
...
This way we cover all users up to 256 at least. The reason these are not
enabled by default is that they slow down the compilation of the crate
by a factor of 2-3x.
2018-11-25 09:22:51 +01:00
bluss
813e9dde42
MAINT: Update readme files for nodrop crates
...
Fixes #107
2018-11-12 22:26:20 +01:00
bluss
08c20edbb0
nodrop 0.1.13
2018-11-12 22:22:53 +01:00
bluss
0b63772902
nodrop-union 0.1.10
2018-11-12 22:22:36 +01:00
bluss
916f6781e4
Merge pull request #104 from clarcharr/clone_into_iter
...
Implement Clone, Debug for IntoIter
2018-10-30 19:51:06 +01:00
Clar Fon
2d3c2e3a0f
Test IntoIter::clone
2018-10-28 18:45:11 -04:00
Clar Fon
46b64537cb
Implement Clone, Debug for IntoIter
2018-10-28 18:45:11 -04:00
bluss
16aabf7c2c
DOC: Fix typo in insert doc
2018-02-10 21:57:36 +01:00
bluss
c1b72500cd
REFAC Use clone_from_slice, extend in ArrayVec::clone_from
...
This is just a cleanup of the code, with less repetition.
2018-02-06 19:29:15 +01:00
bluss
0872a5946c
0.4.7
2018-01-17 20:45:50 +01:00
bluss
2eeed4bae5
Merge pull request #90 from jeehoonkang/rust-1.12.1
...
Support Rust 1.13.0
2018-01-17 20:35:36 +01:00
bluss
bb92d72fd5
Merge pull request #91 from bluss/future-compat
...
FIX: Fix future compat warning with pointer casts
2018-01-17 20:33:41 +01:00
bluss
a903e1a770
FIX: Fix future compat warning with pointer casts
...
```
warning: the type of this value must be known in this context
--> src/lib.rs:312:32
|
312 | ptr::copy(p, p.offset(1), len - index);
| ^^^^^^
|
= note: #[warn(tyvar_behind_raw_pointer)] on by default
= warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
= note: for more information, see issue #46906 <https://github.com/rust-lang/rust/issues/46906 >
```
2018-01-17 20:25:47 +01:00
Jeehoon Kang
3df64ccd50
Support Rust 1.13.0
2018-01-16 15:04:45 +09:00
bluss
ef133ef960
FIX: Use drop_in_place in IntoIter's drop.
2017-12-03 21:57:38 +01:00
bluss
7a416ea146
MAINT: Use author name in copyright thing
2017-12-03 21:57:38 +01:00
bluss
807d64b89a
Merge pull request #88 from ignatenkobrain/master
...
include LICENSE to sub-crates
2017-12-03 21:54:38 +01:00
Igor Gnatenko
d281b3866d
include LICENSE to sub-crates
...
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com >
2017-12-03 21:23:58 +01:00
bluss
b3e5b1e1ac
0.4.6
2017-11-04 11:57:17 +01:00
bluss
55e250adb7
Merge pull request #85 from bluss/conditional-16-bit-array-master
...
Fix 1 << 16 size array impl: only possible on bigger than 16-bit
2017-11-04 00:13:17 +01:00
bluss
ce009233ae
BUG: Fix 1 << 16 size array impl: only possible on bigger than 16-bit
2017-11-03 19:29:54 +01:00
bluss
e95d440f54
DOC: Update readme, nodrop section is in its own directory already
2017-10-28 10:34:40 +02:00
bluss
e364e2e79d
0.4.5
2017-10-27 22:54:46 +02:00
bluss
a2e3fcea3f
DOC: Minor fixes in docs, for ' → ’
2017-10-27 22:54:46 +02:00
bluss
db616eb9c5
Merge pull request #81 from bluss/no-odds-in-arrayvec
...
Remove odds dependency in arrayvec
2017-10-27 22:40:31 +02:00
bluss
4195f1a741
FEAT: Benchmarks for arraystring.try_push / push
...
These benches inform encode_utf8 changes, if any.
2017-10-27 22:31:49 +02:00
bluss
456aeaf557
FEAT: Remove odds dependency in arrayvec
...
Copy the encode_utf8 function from odds. std encode_utf8 requires Rust
1.15 and has a different signature, this one seems to fit us better.
2017-10-27 22:31:49 +02:00
bluss
4fe3e05997
nodrop 0.1.12
2017-10-27 21:51:45 +02:00
bluss
9d9250f462
Merge pull request #80 from bluss/no-odds-in-no-drop
...
nodrop: Remove odds dependency
2017-10-27 21:47:54 +02:00