|
| 1 | +<a name="6.0.0"></a> |
| 2 | +## 6.0.0 (2024-07-02) |
| 3 | + |
| 4 | +This release is the result of a complete rewrite to deliver a ton of new features and improvements ✨ |
| 5 | +The most important changes are highlighted below. |
| 6 | + |
| 7 | +### Installation |
| 8 | + |
| 9 | +The installation has been simplified a lot! |
| 10 | +To install Rustlings after installing Rust, all what you need to do now is running the following command: |
| 11 | + |
| 12 | +```bash |
| 13 | +cargo install rustlings |
| 14 | +``` |
| 15 | + |
| 16 | +Yes, this means that Rustlings is now on [crates.io](https://crates.io/crates/rustlings) 🎉 |
| 17 | + |
| 18 | +You can read about the motivations of this change in [this issue](https://github.com/rust-lang/rustlings/issues/1919). |
| 19 | + |
| 20 | +### UI/UX |
| 21 | + |
| 22 | +- The UI is now responsive when the terminal is resized. |
| 23 | +- The progress bar was moved to the bottom so that you can always see your progress and the current exercise to work on. |
| 24 | +- The current exercise path is now a terminal link. It will open the exercise file in your default editor when you click on it. |
| 25 | +- A small prompt is now always shown at the bottom. It allows you to choose an action by entering a character. For example, entering `h` will show you the hint of the current exercise. |
| 26 | +- The comment "I AM NOT DONE!" doesn't exist anymore. Instead of needing to remove it to go to the next exercise, you need to enter `n` in the terminal. |
| 27 | + |
| 28 | +### List mode |
| 29 | + |
| 30 | +A list mode was added using [`Ratatui`](https://ratatui.rs). |
| 31 | +You can enter it by entering `l` in the watch mode. |
| 32 | +It offers the following features: |
| 33 | + |
| 34 | +- Browse all exercises and see their state (pending/done). |
| 35 | +- Filter exercises based on their state (done/pending). |
| 36 | +- Continue at another exercise. This allows you to skip some exercises or go back to previous ones. |
| 37 | +- Reset an exercise so that you can start over and revert your changes. |
| 38 | + |
| 39 | +### Solutions |
| 40 | + |
| 41 | +After finishing an exercise, a solution file will be available and Rustlings will show you its path in green. |
| 42 | +This allows you to compare your solution with an idiomatic solution and maybe learn about other ways to solve a problem. |
| 43 | + |
| 44 | +### LSP support out of the box |
| 45 | + |
| 46 | +Instead of creating a `project.json` file using `rustlings lsp`, Rustlings now works with a `Cargo.toml` file. |
| 47 | +This should avoid issues related to the language server or to running exercises, especially the ones with Clippy. |
| 48 | + |
| 49 | +### Clippy |
| 50 | + |
| 51 | +Clippy lints are now shown on all exercises! 📎 |
| 52 | +Make Clippy your friend from early on 🥰 |
| 53 | + |
| 54 | +### Third party exercises |
| 55 | + |
| 56 | +Rustlings now supports third-party exercises! |
| 57 | + |
| 58 | +Do you want to create your own set of Rustlings exercises to focus on some specific topic? |
| 59 | +Or did you want to translate the original Rustlings exercises? |
| 60 | +Then follow the link to the guide about [third-party exercises](THIRD_PARTY_EXERCISES.md)! |
| 61 | + |
1 | 62 | <a name="5.6.1"></a>
|
2 | 63 | ## 5.6.1 (2023-09-18)
|
3 | 64 |
|
|
30 | 91 | - Swapped the order of threads and smart pointer exercises.
|
31 | 92 | - Rewrote the CLI to use `clap` - it's matured much since we switched to `argh` :)
|
32 | 93 | - `structs3`: Switched from i32 to u32.
|
33 |
| -- `move_semantics`: Switched 1-4 to tests, and rewrote them to be way simpler, while still teaching about the same |
| 94 | +- `move_semantics`: Switched 1-4 to tests, and rewrote them to be way simpler, while still teaching about the same |
34 | 95 | concepts.
|
35 | 96 |
|
36 | 97 | #### Fixed
|
|
0 commit comments