Skip to content

Commit 34b166f

Browse files
committed
Update README regarding versions and compatibility shims
1 parent fc51a59 commit 34b166f

File tree

1 file changed

+15
-2
lines changed

1 file changed

+15
-2
lines changed

README.md

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,14 +37,27 @@ let x: f64 = thread_rng().gen();
3737

3838
## Versions
3939

40-
Version 0.5 is in development and contains many breaking changes; expected
41-
release date is approx. end of March 2018 if all goes well.
40+
Version 0.5 is available as a pre-release and contains many breaking changes.
41+
See [the Upgrade Guide](UPDATING.md) for guidance on updating from previous
42+
versions.
4243

4344
Version 0.4 was released in December 2017. It contains almost no breaking
4445
changes since the 0.3 series.
4546

4647
For more details, see the [changelog](CHANGELOG.md).
4748

49+
### Compatibility shims
50+
51+
**As of now there is no compatibility shim between Rand 0.4 and 0.5.**
52+
It is also not entirely obvious how to make one due to the large differences
53+
between the two versions, although it would be possible to implement the new
54+
`RngCore` for any implementation of the old `Rng` (or vice-versa; unfortunately
55+
not both as that would result in circular implementation). If we implement a
56+
compatibility shim it will be optional (opt-in via a feature).
57+
58+
There is a compatibility shim from 0.3 to 0.4 forcibly upgrading all Rand 0.3
59+
users; this is largely due to the small differences between the two versions.
60+
4861
### Rust version requirements
4962

5063
The 0.5 release of Rand will require **Rustc version 1.22 or greater**.

0 commit comments

Comments
 (0)