Today I’m trying a new experiment - reporting all the official releases in the last week.
If you are a maintainer of an offical project you can do three things to help make this easier:
- Tag your releases in git, “x.y.z”
- Merge all changes via GitHub PR. Even small changes by the primary maintainer should go through a PR,
even if they are simply immediately merged by the author. This makes it easier to scan the logs for
notable changes by only reading the merges. Even better if @bors makes all merges.
- Ideally, write a changelog, like this one.
Here are the releases from The Rust Project for the week spanning 2016-04-08 to 2016-04-15.
This report covers projects in the rust-lang, rust-lang-nursery and rust-lang-deprecated GitHub organizations.
lazy_static 0.2.0 (released 2016-04-13)
Refactored macro to change nightly-cfg behavior
Allow the macro to coexist with
On nightly, use
allow_internal_unstableso dependents don’t have
lazy_static 0.1.16 (released 2016-04-11)
- Made the macro rely less on a prelude being aviable by using an
absolute path for
libc 0.2.10 (released 2016-04-12)
On Android the
signalfunction links to the newer C
function, instead of the obsolete
- Add locale support.
- Add more locale support.
RTL_DEFAULTis definied for Android andBSD.
Link to libraries when disabling
On GNU Linux,
- Add several pthread functions to Dragonfly and FreeBSD.
forkptyfor non-Apple platforms.
regex 0.1.66 (released 2016-04-14)
- Speculative support for Unicode word boundaries was added to the DFA. This
should remove the last common case that disqualified use of the DFA.
- An optimization that scanned for suffix literals and then matched the regular
expression in reverse was removed because it had worst case quadratic time
complexity. It was replaced with a more limited optimization where, given any
regex of the form
re$, it will be matched in reverse from the end of the
The inner loop of the DFA was heavily optimized to improve cache locality
and reduce the overall number of instructions run on each iteration. This
represents the first use of
regex(to elide bounds checks).
Use of the
mempoolcrate (which used thread local storage) was replaced
with a faster version of a similar API in @Amanieu’s
It should reduce contention when using a regex from multiple threads
- PCRE2 JIT benchmarks were added. A benchmark comparison can be found
(Includes a comparison with PCRE1’s JIT and Oniguruma.)
- A bug where word boundaries weren’t being matched correctly in the DFA was
fixed. This only affected use of
Capturesnow has a
rustfmt 0.4.1 (released 2016-04-13)
- Return non-zero exit code if there are errors.
- Be careful about where we change braces in closures.
- Handle variadic function types.
Change the logic around breaking multiple patterns in match
Fix incorrect indent with
- Format closed ranges.
- Properly format macros with an extra ident.
rust-mode (released continuously)
rustup 0.1.6 (released 2016-04-14)
rustup picks the correct host architecture on armv7-unknown-linux,
x86_64-unknown-freebsd, and other tier-2/3 platforms.
- rustup-setup.sh detects aarch64.