|
| 1 | +Version 1.23.0 (2018-01-04) |
| 2 | +========================== |
| 3 | + |
| 4 | +Language |
| 5 | +-------- |
| 6 | +- [Fixed displaying duplicate errors on some trait bounds.][45772] |
| 7 | + |
| 8 | +Compiler |
| 9 | +-------- |
| 10 | +- [Enabled `TrapUnreachable` in LLVM which should prevent some cases of |
| 11 | + undefined behaviour.][45920] |
| 12 | +- [rustc now suggests renaming import if names clash.][45660] |
| 13 | +- [Display errors/warnings correctly when there are zero-width or |
| 14 | + wide characters.][45711] |
| 15 | +- [rustc now uses subtyping on the left hand side of binary operations.][45435] |
| 16 | + Which should fix some confusing errors in some operations. |
| 17 | +- [Bumped the minimum LLVM to 3.9][45326] |
| 18 | +- [rustc now avoids unnecessary copies of arguments that are |
| 19 | + simple bindings][45380] This should improve memory usage on average by 5-10%. |
| 20 | +- [Updated musl used to build musl rustc to 1.1.17][45393] |
| 21 | + |
| 22 | +Libraries |
| 23 | +--------- |
| 24 | +- [impl `From<T>` for `Mutex<T>` and `RwLock<T>`][46082] |
| 25 | +- [Allow a trailling comma in `assert_eq/ne` macro][45887] |
| 26 | +- [Implement Hash for raw pointers to unsized types][45483] |
| 27 | +- [impl `From<*mut T>` for `AtomicPtr<T>`][45610] |
| 28 | +- [impl `From<{number_size}>` for `Atomic{number_size}`][45610] eg. `From<u8>` |
| 29 | + for `AtomicU8`. |
| 30 | +- [Removed the `T: Sync` requirement for `RwLock<T>: Send`][45267] |
| 31 | +- [Removed `T: Sized` requirement for `<*const T>::as_ref` |
| 32 | + and `<*const T>::as_mut`][44932] |
| 33 | +- [Optimized `Thread::{park, unpark}` implementation][45524] |
| 34 | +- [Improved `SliceExt::binary_search` performance.][45333] |
| 35 | +- [Optimized `Read::read_to_end`.][46050] This increase file read speed and for |
| 36 | + small files reduce the number of syscalls. |
| 37 | + |
| 38 | +Stabilized APIs |
| 39 | +--------------- |
| 40 | + |
| 41 | +Cargo |
| 42 | +----- |
| 43 | +- [Cargo now supports alternative registries][cargo/4506] |
| 44 | +- [Cargo now supports uninstallation of multiple packages][cargo/4561] |
| 45 | + eg. `cargo uninstall foo bar` uninstalls `foo` and `bar`. |
| 46 | +- [Added unit test checking to `cargo check`][cargo/4592] |
| 47 | +- [Cargo now lets you install a specific version |
| 48 | + using `cargo install --version`][cargo/4637] |
| 49 | + |
| 50 | +Misc |
| 51 | +---- |
| 52 | +- [Releases now ship with the Cargo book documentation.][45692] |
| 53 | +- [rustdoc now prints rendering warnings on every run.][45324] |
| 54 | +- [Release tarballs now come with rustfmt][45903] |
| 55 | + |
| 56 | +Compatibility Notes |
| 57 | +------------------- |
| 58 | +- [`fmt::Arguments` can no longer be shared across threads.][45198] |
| 59 | +- [Changes have been made to type equality to make it more correct, |
| 60 | + in rare cases this could break some code.][45853] [Tracking issue for |
| 61 | + further information][45852] |
| 62 | +- [Changed how closures are stored, as a result of this change you can no longer |
| 63 | + have a situation where a closure directly calls itself.][45879] |
| 64 | +- [`char::escape_debug` now uses Unicode 10 over 9.][45571] |
| 65 | +- [Upgraded Android SDK to 27, and NDK to r15c.][45580] This drops support for |
| 66 | + Android 9, the minimum supported version is Android 14. |
| 67 | +- [Refactored type memory layouts and ABIs.][45225] This reduce code generated |
| 68 | + for a lot of types. |
| 69 | + |
| 70 | +[44932]: https://github.com/rust-lang/rust/pull/44932 |
| 71 | +[45198]: https://github.com/rust-lang/rust/pull/45198 |
| 72 | +[45225]: https://github.com/rust-lang/rust/pull/45225 |
| 73 | +[45267]: https://github.com/rust-lang/rust/pull/45267 |
| 74 | +[45324]: https://github.com/rust-lang/rust/pull/45324 |
| 75 | +[45326]: https://github.com/rust-lang/rust/pull/45326 |
| 76 | +[45333]: https://github.com/rust-lang/rust/pull/45333 |
| 77 | +[45380]: https://github.com/rust-lang/rust/pull/45380 |
| 78 | +[45393]: https://github.com/rust-lang/rust/pull/45393 |
| 79 | +[45435]: https://github.com/rust-lang/rust/pull/45435 |
| 80 | +[45483]: https://github.com/rust-lang/rust/pull/45483 |
| 81 | +[45524]: https://github.com/rust-lang/rust/pull/45524 |
| 82 | +[45571]: https://github.com/rust-lang/rust/pull/45571 |
| 83 | +[45580]: https://github.com/rust-lang/rust/pull/45580 |
| 84 | +[45610]: https://github.com/rust-lang/rust/pull/45610 |
| 85 | +[45660]: https://github.com/rust-lang/rust/pull/45660 |
| 86 | +[45692]: https://github.com/rust-lang/rust/pull/45692 |
| 87 | +[45711]: https://github.com/rust-lang/rust/pull/45711 |
| 88 | +[45772]: https://github.com/rust-lang/rust/pull/45772 |
| 89 | +[45852]: https://github.com/rust-lang/rust/issues/45852 |
| 90 | +[45853]: https://github.com/rust-lang/rust/pull/45853 |
| 91 | +[45879]: https://github.com/rust-lang/rust/pull/45879 |
| 92 | +[45887]: https://github.com/rust-lang/rust/pull/45887 |
| 93 | +[45903]: https://github.com/rust-lang/rust/pull/45903 |
| 94 | +[45920]: https://github.com/rust-lang/rust/pull/45920 |
| 95 | +[46050]: https://github.com/rust-lang/rust/pull/46050 |
| 96 | +[46082]: https://github.com/rust-lang/rust/pull/46082 |
| 97 | +[cargo/4506]: https://github.com/rust-lang/cargo/pull/4506 |
| 98 | +[cargo/4561]: https://github.com/rust-lang/cargo/pull/4561 |
| 99 | +[cargo/4592]: https://github.com/rust-lang/cargo/pull/4592 |
| 100 | +[cargo/4637]: https://github.com/rust-lang/cargo/pull/4637 |
| 101 | + |
| 102 | + |
1 | 103 | Version 1.22.1 (2017-11-22)
|
2 | 104 | ==========================
|
3 | 105 |
|
|
0 commit comments