From f5e9db90ccb5b84fbcb0ccff8aaade50588d534c Mon Sep 17 00:00:00 2001 From: pavedroad Date: Tue, 12 Mar 2024 14:35:48 +0800 Subject: chore: fix typo Signed-off-by: pavedroad --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'CHANGELOG.md') diff --git a/CHANGELOG.md b/CHANGELOG.md index a7226a4..a199e4d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -167,7 +167,7 @@ - **structs3**: Clarifed the hint - **quiz2, as_ref_mut, options1, traits1, traits2**: Clarified hints - **traits1, traits2, cli**: Tidied up unmatching backticks -- **enums2**: Removed unneccessary indirection of self +- **enums2**: Removed unnecessary indirection of self - **enums3**: Added an extra tuple comment #### Housekeeping -- cgit v1.2.3 From 95f10c80689db6b156ced7fa43bd56309137cc7f Mon Sep 17 00:00:00 2001 From: mo8it Date: Tue, 2 Jul 2024 16:10:42 +0200 Subject: Update CHANGELOG --- CHANGELOG.md | 63 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 62 insertions(+), 1 deletion(-) (limited to 'CHANGELOG.md') diff --git a/CHANGELOG.md b/CHANGELOG.md index a199e4d..38c5b20 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,64 @@ + +## 6.0.0 (2024-07-02) + +This release is the result of a complete rewrite to deliver a ton of new features and improvements ✨ +The most important changes are highlighted below. + +### Installation + +The installation has been simplified a lot! +To install Rustlings after installing Rust, all what you need to do now is running the following command: + +```bash +cargo install rustlings +``` + +Yes, this means that Rustlings is now on [crates.io](https://crates.io/crates/rustlings) 🎉 + +You can read about the motivations of this change in [this issue](https://github.com/rust-lang/rustlings/issues/1919). + +### UI/UX + +- The UI is now responsive when the terminal is resized. +- The progress bar was moved to the bottom so that you can always see your progress and the current exercise to work on. +- The current exercise path is now a terminal link. It will open the exercise file in your default editor when you click on it. +- 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. +- 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. + +### List mode + +A list mode was added using [`Ratatui`](https://ratatui.rs). +You can enter it by entering `l` in the watch mode. +It offers the following features: + +- Browse all exercises and see their state (pending/done). +- Filter exercises based on their state (done/pending). +- Continue at another exercise. This allows you to skip some exercises or go back to previous ones. +- Reset an exercise so that you can start over and revert your changes. + +### Solutions + +After finishing an exercise, a solution file will be available and Rustlings will show you its path in green. +This allows you to compare your solution with an idiomatic solution and maybe learn about other ways to solve a problem. + +### LSP support out of the box + +Instead of creating a `project.json` file using `rustlings lsp`, Rustlings now works with a `Cargo.toml` file. +This should avoid issues related to the language server or to running exercises, especially the ones with Clippy. + +### Clippy + +Clippy lints are now shown on all exercises! 📎 +Make Clippy your friend from early on 🥰 + +### Third party exercises + +Rustlings now supports third-party exercises! + +Do you want to create your own set of Rustlings exercises to focus on some specific topic? +Or did you want to translate the original Rustlings exercises? +Then follow the link to the guide about [third-party exercises](THIRD_PARTY_EXERCISES.md)! + ## 5.6.1 (2023-09-18) @@ -30,7 +91,7 @@ - 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 +- `move_semantics`: Switched 1-4 to tests, and rewrote them to be way simpler, while still teaching about the same concepts. #### Fixed -- cgit v1.2.3 From 2f8fa469ac9ce6b3ccff956215cdaacc16e9dbab Mon Sep 17 00:00:00 2001 From: mo8it Date: Tue, 2 Jul 2024 16:26:59 +0200 Subject: Small writing changes --- CHANGELOG.md | 15 ++++++++++----- README.md | 2 +- THIRD_PARTY_EXERCISES.md | 8 ++++---- 3 files changed, 15 insertions(+), 10 deletions(-) (limited to 'CHANGELOG.md') diff --git a/CHANGELOG.md b/CHANGELOG.md index 38c5b20..5cc4c98 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -32,23 +32,28 @@ You can enter it by entering `l` in the watch mode. It offers the following features: - Browse all exercises and see their state (pending/done). -- Filter exercises based on their state (done/pending). +- Filter exercises based on their state (pending/done). - Continue at another exercise. This allows you to skip some exercises or go back to previous ones. -- Reset an exercise so that you can start over and revert your changes. +- Reset an exercise so you can start over and revert your changes. ### Solutions After finishing an exercise, a solution file will be available and Rustlings will show you its path in green. This allows you to compare your solution with an idiomatic solution and maybe learn about other ways to solve a problem. +While writing the solutions, all exercises have been polished 🌟 +For example, every exercise now contains `TODO` comments to highlight what the user needs to change and where. + ### LSP support out of the box -Instead of creating a `project.json` file using `rustlings lsp`, Rustlings now works with a `Cargo.toml` file. +Instead of creating a `project.json` file using `rustlings lsp`, Rustlings now works with a `Cargo.toml` file out of the box. +No actions are needed to activate the language server `rust-analyzer`. + This should avoid issues related to the language server or to running exercises, especially the ones with Clippy. ### Clippy -Clippy lints are now shown on all exercises! 📎 +Clippy lints are now shown on all exercises, not only the Clippy exercises 📎 Make Clippy your friend from early on 🥰 ### Third party exercises @@ -56,7 +61,7 @@ Make Clippy your friend from early on 🥰 Rustlings now supports third-party exercises! Do you want to create your own set of Rustlings exercises to focus on some specific topic? -Or did you want to translate the original Rustlings exercises? +Or do you want to translate the original Rustlings exercises? Then follow the link to the guide about [third-party exercises](THIRD_PARTY_EXERCISES.md)! diff --git a/README.md b/README.md index 4cee71c..373b9c7 100644 --- a/README.md +++ b/README.md @@ -123,7 +123,7 @@ Continue practicing your Rust skills by building your own projects, contributing ## Third-Party Exercises Do you want to create your own set of Rustlings exercises to focus on some specific topic? -Or did you want to translate the original Rustlings exercises? +Or do you want to translate the original Rustlings exercises? Then follow the link to the guide about [third-party exercises](THIRD_PARTY_EXERCISES.md)! ## Uninstalling Rustlings diff --git a/THIRD_PARTY_EXERCISES.md b/THIRD_PARTY_EXERCISES.md index 2ae8b72..5c06694 100644 --- a/THIRD_PARTY_EXERCISES.md +++ b/THIRD_PARTY_EXERCISES.md @@ -1,14 +1,14 @@ # Third-Party Exercises The support of Rustlings for third-party exercises allows you to create your own set of Rustlings exercises to focus on some specific topic. -You could also offer a translatation of the original Rustlings exercises as a third-party exercises. +You could also offer a translatation of the original Rustlings exercises as third-party exercises. ## Getting started To create third-party exercises, install Rustlings and run `rustlings dev new PROJECT_NAME`. This command will, similar to `cargo new PROJECT_NAME`, create a template directory called `PROJECT_NAME` with all what you need to get started. -Read the comments in the generated `info.toml` file to understand the format of this file. +Read the comments in the generated `info.toml` file to understand its format. It allows you to set a custom welcome and final message and specify the metadata of every exercise. ## Create an exercise @@ -46,8 +46,8 @@ Now, add more exercises and publish them as a Git repository. Users just have to clone that repository and run `rustlings` in it to start working on your set of exercises just like the official ones. One difference to the official exercises is that the solution files will not be hidden until the user finishes an exercise. -But you can trust the user to not look at the solution too early ;) +But you can trust the users to not look at the solution too early 😉 ## Share -After publishing your set of exercises, open a pull request in the official Rustlings repository to link to your project in the README 😃 +After publishing your set of exercises, open an issue or a pull request in the official Rustlings repository to link to your project in the README 😃 -- cgit v1.2.3 From 33dfe5331a034a2705c45e420f52983a99e204f5 Mon Sep 17 00:00:00 2001 From: mo8it Date: Wed, 3 Jul 2024 15:24:07 +0200 Subject: Update CHANGELOG --- CHANGELOG.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'CHANGELOG.md') diff --git a/CHANGELOG.md b/CHANGELOG.md index 5cc4c98..11502ed 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,6 @@ -## 6.0.0 (2024-07-02) + +## 6.0.0 (2024-07-03) This release is the result of a complete rewrite to deliver a ton of new features and improvements ✨ The most important changes are highlighted below. @@ -27,7 +28,7 @@ You can read about the motivations of this change in [this issue](https://github ### List mode -A list mode was added using [`Ratatui`](https://ratatui.rs). +A list mode was added using [Ratatui](https://ratatui.rs). You can enter it by entering `l` in the watch mode. It offers the following features: @@ -65,6 +66,7 @@ Or do you want to translate the original Rustlings exercises? Then follow the link to the guide about [third-party exercises](THIRD_PARTY_EXERCISES.md)! + ## 5.6.1 (2023-09-18) #### Changed @@ -81,6 +83,7 @@ Then follow the link to the guide about [third-party exercises](THIRD_PARTY_EXER - `enums3`: Fixed formatting with `rustfmt`. + ## 5.6.0 (2023-09-04) #### Added @@ -121,6 +124,7 @@ Then follow the link to the guide about [third-party exercises](THIRD_PARTY_EXER - Improved CI workflows, we're now testing on multiple platforms at once. + ## 5.5.1 (2023-05-17) #### Fixed @@ -128,6 +132,7 @@ Then follow the link to the guide about [third-party exercises](THIRD_PARTY_EXER - Reverted `rust-project.json` path generation due to an upstream `rust-analyzer` fix. + ## 5.5.0 (2023-05-17) #### Added @@ -163,6 +168,7 @@ Then follow the link to the guide about [third-party exercises](THIRD_PARTY_EXER - Split quick installation section into two code blocks + ## 5.4.1 (2023-03-10) #### Changed -- cgit v1.2.3 From 48105550383e4536bea9bc6d403cc5d50c51948a Mon Sep 17 00:00:00 2001 From: mo8it Date: Thu, 4 Jul 2024 20:02:30 +0200 Subject: Update CHANGELOG --- CHANGELOG.md | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'CHANGELOG.md') diff --git a/CHANGELOG.md b/CHANGELOG.md index 11502ed..9025d45 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ + + +## 6.0.1 (2024-07-04) + +Small exercise improvements and fixes. +Most importantly, fixed that the exercise `clippy1` was already solved 😅 + ## 6.0.0 (2024-07-03) -- cgit v1.2.3