release: 5.6.0

This commit is contained in:
liv 2023-09-04 15:23:04 +02:00
parent ae28d2fa2d
commit 58cabf2ebd
6 changed files with 49 additions and 10 deletions

View file

@ -1,3 +1,43 @@
<a name="5.6.0"></a>
## 5.6.0 (2023-09-04)
#### Added
- New exercise: `if3`, teaching the user about `if let` statements.
- `hashmaps2`: Added an extra test function to check if the amount of fruits is higher than zero.
- `enums3`: Added a test for `Message`.
- `if1`: Added a test case to check equal values.
- `if3`: Added a note specifying that there are no test changes needed.
#### Changed
- Swapped the order of threads and smart pointer exercises.
- Rewrote the CLI to use `clap` - it's matured much since we switched to `argh` :)
- `structs3`: Switched from i32 to u32.
- `move_semantics`: Switched 1-4 to tests, and rewrote them to be way simpler, while still teaching about the same
concepts.
#### Fixed
- `iterators5`:
- Removed an outdated part of the hint.
- Renamed variables to use snake_case.
- `vecs2`: Updated the hint to reference the renamed loop variable.
- `enums3`: Changed message string in test so that it gets properly tested.
- `strings2`: Corrected line number in hint, then removed it (this both happened as part of this release cycle).
- `primitive_types4`: Updated hint to the correct ending index.
- `quiz1`: Removed duplicated sentence from exercise comments.
- `errors4`: Improved comment.
- `from_into`: Fixed test values.
- `cow1`: Added `.to_mut()` to distinguish from the previous test case.
- `threads2`: Updated hint text to reference the correct book heading.
#### Housekeeping
- Cleaned up the explanation paragraphs at the start of each exercise.
- Lots of Nix housekeeping that I don't feel qualified to write about!
- Improved CI workflows, we're now testing on multiple platforms at once.
<a name="5.5.1"></a> <a name="5.5.1"></a>
## 5.5.1 (2023-05-17) ## 5.5.1 (2023-05-17)

2
Cargo.lock generated
View file

@ -585,7 +585,7 @@ checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da"
[[package]] [[package]]
name = "rustlings" name = "rustlings"
version = "5.5.1" version = "5.6.0"
dependencies = [ dependencies = [
"assert_cmd", "assert_cmd",
"clap", "clap",

View file

@ -1,7 +1,7 @@
[package] [package]
name = "rustlings" name = "rustlings"
description = "Small exercises to get you used to reading and writing Rust code!" description = "Small exercises to get you used to reading and writing Rust code!"
version = "5.5.1" version = "5.6.0"
authors = [ authors = [
"Liv <mokou@fastmail.com>", "Liv <mokou@fastmail.com>",
"Carol (Nichols || Goulding) <carol.nichols@gmail.com>", "Carol (Nichols || Goulding) <carol.nichols@gmail.com>",

View file

@ -41,8 +41,8 @@ This will install Rustlings and give you access to the `rustlings` command. Run
Basically: Clone the repository at the latest tag, finally run `nix develop` or `nix-shell`. Basically: Clone the repository at the latest tag, finally run `nix develop` or `nix-shell`.
```bash ```bash
# find out the latest version at https://github.com/rust-lang/rustlings/releases/latest (on edit 5.5.1) # find out the latest version at https://github.com/rust-lang/rustlings/releases/latest (on edit 5.6.0)
git clone -b 5.5.1 --depth 1 https://github.com/rust-lang/rustlings git clone -b 5.6.0 --depth 1 https://github.com/rust-lang/rustlings
cd rustlings cd rustlings
# if nix version > 2.3 # if nix version > 2.3
nix develop nix develop
@ -79,8 +79,8 @@ If you get a permission denied message, you might have to exclude the directory
Basically: Clone the repository at the latest tag, run `cargo install --path .`. Basically: Clone the repository at the latest tag, run `cargo install --path .`.
```bash ```bash
# find out the latest version at https://github.com/rust-lang/rustlings/releases/latest (on edit 5.5.1) # find out the latest version at https://github.com/rust-lang/rustlings/releases/latest (on edit 5.6.0)
git clone -b 5.5.1 --depth 1 https://github.com/rust-lang/rustlings git clone -b 5.6.0 --depth 1 https://github.com/rust-lang/rustlings
cd rustlings cd rustlings
cargo install --force --path . cargo install --force --path .
``` ```

View file

@ -22,7 +22,7 @@
rustlings = rustlings =
pkgs.rustPlatform.buildRustPackage { pkgs.rustPlatform.buildRustPackage {
name = "rustlings"; name = "rustlings";
version = "5.5.1"; version = "5.6.0";
buildInputs = cargoBuildInputs; buildInputs = cargoBuildInputs;
nativeBuildInputs = [pkgs.git]; nativeBuildInputs = [pkgs.git];

View file

@ -12,14 +12,13 @@
}, },
"components": { "components": {
"artifacts": { "artifacts": {
"cargo_dist": false, "auto": true,
"package_managers": { "package_managers": {
"preferred": { "preferred": {
"macos/linux/unix": "curl -L https://raw.githubusercontent.com/rust-lang/rustlings/main/install.sh | bash", "macos/linux/unix": "curl -L https://raw.githubusercontent.com/rust-lang/rustlings/main/install.sh | bash",
"windows": "Start-BitsTransfer -Source https://raw.githubusercontent.com/rust-lang/rustlings/main/install.ps1 -Destination $env:TMP/install_rustlings.ps1; Unblock-File $env:TMP/install_rustlings.ps1; Invoke-Expression $env:TMP/install_rustlings.ps1" "windows": "Start-BitsTransfer -Source https://raw.githubusercontent.com/rust-lang/rustlings/main/install.ps1 -Destination $env:TMP/install_rustlings.ps1; Unblock-File $env:TMP/install_rustlings.ps1; Invoke-Expression $env:TMP/install_rustlings.ps1"
} }
} }
}, }
"changelog": true
} }
} }