:crab: Small exercises to get you used to reading and writing Rust code!
This release cleans up a bunch of the bugs left in 5.0, and adds two new smart pointer exercises. For detailed information, check the changelog.
To upgrade:
git fetch
git checkout tags/5.1.0
Probably Rustlings' biggest release yet! 🎉 For detailed information, check the changelog. I'll post the features section here:
hint
watch mode subcommand.vec
and primitive_types
exercises before move_semantics
.vec
to vecs
to be more in line with the naming in general.collections
exercises in their own folders.strings
before modules
.strings3
exercise to teach modifying strings.hashmaps3
exercise for some advanced usage of hashmaps.quiz2
to be strings4
, since it only tested strings
anyways.quiz2
into a new exercise that tests more chapters.option
to options
.generics3
to be quiz3
.iterators
.threads1
between two exercises, the first one focusing more on
JoinHandle
s.threads3
exercises that uses std::sync::mpsc
.clippy3
exercises with some more interesting checks.AsMut
.This release adds 12 new exercises, makes tons of little (and sometimes significant) improvements to existing exercises, rearranges a good chunk of the exercises to make more sense in our curriculum (while still trying to stay faithful to the book), and it gets rid of some exercises that have not been a good fit for this project.
There's still a fair amount of things that I want to change, such as having better exercises for smart pointers, but that's for a future release. Feel free to post your feedback after you've completed this new version of the course!
Special thanks for the Rust Foundation for sponsoring the majority of my work on this release!
To upgrade:
git fetch
git checkout tags/5.0.0
Adds a progress indicator, a new rustlings lsp
command, and more! For detailed information, check the changelog.
To upgrade:
git fetch
git checkout tags/4.8.0
Mainly reduces the crate size by a bit, thus also reducing compilation time. See the changelog to see what's changed.
To upgrade, run:
git fetch
git checkout tags/4.7.1
See the changelog for what's changed. Some highlights:
move_semantics4
.rust-analyzer
support has been added via an optional crate feature. More info in the README
To upgrade, run:
git fetch
git checkout tags/4.7.0
See the changelog for what's changed. Some highlights:
advanced_errs1
and advanced_errs2
modules3
try_from_into
and from_str
have been reworked to include custom error types.quit
and help
command.To upgrade, run:
git fetch
git checkout tags/4.6.0
See the changelog for what's changed. Some highlights:
rustlings list
now displays structured data, and a takes a lot more options to filter that data:NO_EMOJI
envionment variableiterators5
, has been addedTo upgrade, run:
git fetch
git checkout tags/4.4.0
See the changelog for what's changed. Some highlights:
rustlings
(without any arguments) should now be more helpfulrustlings list
command has been addedTo upgrade:
git fetch
git checkout tags/4.3.0