Merge pull request from rust-lang/main

update
This commit is contained in:
regonCao 2021-01-03 19:04:21 +08:00 committed by GitHub
commit 30174768f6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 362 additions and 315 deletions

View file

@ -1,3 +1,26 @@
<a name="4.3.0"></a>
## 4.3.0 (2020-12-29)
#### Features
* Rewrite default out text ([44d39112](https://github.com/rust-lang/rustlings/commit/44d39112ff122b29c9793fe52e605df1612c6490))
* match exercise order to book chapters (#541) ([033bf119](https://github.com/rust-lang/rustlings/commit/033bf1198fc8bfce1b570e49da7cde010aa552e3))
* Crab? (#586) ([fa9f522b](https://github.com/rust-lang/rustlings/commit/fa9f522b7f043d7ef73a39f003a9272dfe72c4f4))
* add "rustlings list" command ([838f9f30](https://github.com/rust-lang/rustlings/commit/838f9f30083d0b23fd67503dcf0fbeca498e6647))
* **try_from_into:** remove duplicate annotation ([04f1d079](https://github.com/rust-lang/rustlings/commit/04f1d079aa42a2f49af694bc92c67d731d31a53f))
#### Bug Fixes
* update structs README ([bcf14cf6](https://github.com/rust-lang/rustlings/commit/bcf14cf677adb3a38a3ac3ca53f3c69f61153025))
* added missing exercises to info.toml ([90cfb6ff](https://github.com/rust-lang/rustlings/commit/90cfb6ff28377531bfc34acb70547bdb13374f6b))
* gives a bit more context to magic number ([30644c9a](https://github.com/rust-lang/rustlings/commit/30644c9a062b825c0ea89435dc59f0cad86b110e))
* **functions2:** Change signature to trigger precise error message: (#605) ([0ef95947](https://github.com/rust-lang/rustlings/commit/0ef95947cc30482e63a7045be6cc2fb6f6dcb4cc))
* **structs1:** Adjust wording (#573) ([9334783d](https://github.com/rust-lang/rustlings/commit/9334783da31d821cc59174fbe8320df95828926c))
* **try_from_into:**
* type error ([4f4cfcf3](https://github.com/rust-lang/rustlings/commit/4f4cfcf3c36c8718c7c170c9c3a6935e6ef0618c))
* Update description (#584) ([96347df9](https://github.com/rust-lang/rustlings/commit/96347df9df294f01153b29d9ad4ba361f665c755))
* **vec1:** Have test compare every element in a and v ([9b6c6293](https://github.com/rust-lang/rustlings/commit/9b6c629397b24b944f484f5b2bbd8144266b5695))
<a name="4.2.0"></a> <a name="4.2.0"></a>
## 4.2.0 (2020-11-07) ## 4.2.0 (2020-11-07)

590
Cargo.lock generated

File diff suppressed because it is too large Load diff

View file

@ -1,6 +1,6 @@
[package] [package]
name = "rustlings" name = "rustlings"
version = "4.2.0" version = "4.3.0"
authors = ["Marisa <mokou@posteo.de>", "Carol (Nichols || Goulding) <carol.nichols@gmail.com>"] authors = ["Marisa <mokou@posteo.de>", "Carol (Nichols || Goulding) <carol.nichols@gmail.com>"]
edition = "2018" edition = "2018"

View file

@ -48,6 +48,8 @@ Start-BitsTransfer -Source https://git.io/rustlings-win -Destination $env:TMP/in
To install Rustlings. Same as on MacOS/Linux, you will have access to the `rustlings` command after it. To install Rustlings. Same as on MacOS/Linux, you will have access to the `rustlings` command after it.
When you get a permission denied message then you have to exclude the directory where you placed the rustlings in your virus-scanner
## Browser: ## Browser:
[Run on Repl.it](https://repl.it/github/rust-lang/rustlings) [Run on Repl.it](https://repl.it/github/rust-lang/rustlings)
@ -61,7 +63,7 @@ Basically: Clone the repository, checkout to the latest tag, run `cargo install`
```bash ```bash
git clone https://github.com/rust-lang/rustlings git clone https://github.com/rust-lang/rustlings
cd rustlings cd rustlings
git checkout tags/4.2.0 # or whatever the latest version is (find out at https://github.com/rust-lang/rustlings/releases/latest) git checkout tags/4.3.0 # or whatever the latest version is (find out at https://github.com/rust-lang/rustlings/releases/latest)
cargo install --force --path . cargo install --force --path .
``` ```
@ -118,6 +120,24 @@ cargo uninstall rustlings
rm -r rustlings/ # or on Windows: rmdir /s rustlings rm -r rustlings/ # or on Windows: rmdir /s rustlings
``` ```
## Uninstalling Rustlings
If you want to remove Rustlings from your system, there's two steps. First, you'll need to remove the exercises folder that the install script created
for you:
``` bash
rm -rf rustlings # or your custom folder name, if you chose and or renamed it
```
Second, since Rustlings got installed via `cargo install`, it's only reasonable to assume that you can also remove it using Cargo, and
exactly that is the case. Run `cargo uninstall` to remove the `rustlings` binary:
``` bash
cargo uninstall rustlings
```
Now you should be done!
## Completion ## Completion
Rustlings isn't done; there are a couple of sections that are very experimental and don't have proper documentation. These include: Rustlings isn't done; there are a couple of sections that are very experimental and don't have proper documentation. These include:

View file

@ -1,19 +1,25 @@
Thanks for installing Rustlings! Thanks for installing Rustlings!
Is this your first time? Is this your first time? Don't worry, Rustlings was made for beginners! We are
going to teach you a lot of things about Rust, but before we can get
started, here's a couple of notes about how Rustlings operates:
Let's make sure you're up to speed: 1. The central concept behind Rustlings is that you solve exercises. These
- You have Rust installed, preferably via `rustup` exercises usually have some sort of syntax error in them, which will cause
- You have `~/.cargo/bin` added to your PATH variable them to fail compilation or testing. Sometimes there's a logic error instead
- You have cloned this repository (https://github.com/rust-lang/rustlings) of a syntax error. No matter what error, it's your job to find it and fix it!
- You have installed Rust language support for your editor You'll know when you fixed it because then, the exercise will compile and
- You have locally installed the `rustlings` command by running an Rustlings will be able to move on to the next exercise.
installation script or manually executing: 2. If you run Rustlings in watch mode (which we recommend), it'll automatically
start with the first exercise. Don't get confused by an error message popping
up as soon as you run Rustlings! This is part of the exercise that you're
supposed to solve, so open the exercise file in an editor and start your
detective work!
3. If you're stuck on an exercise, there is a helpful hint you can view by typing
'hint' (in watch mode), or running `rustlings hint myexercise`.
4. If an exercise doesn't make sense to you, feel free to open an issue on GitHub!
(https://github.com/rust-lang/rustlings/issues/new). We look at every issue,
and sometimes, other learners do too so you can help each other out!
cargo install --force --path . Got all that? Great! To get started, run `rustlings watch` in order to get the first
exercise. Make sure to have your editor open!
If you've done all of this (or even most of it), congrats! You're ready
to start working with Rust.
To get started, run `rustlings watch` in order to get the first exercise.
Make sure to have your editor open!

View file

@ -7,7 +7,7 @@ fn main() {
call_me(3); call_me(3);
} }
fn call_me(num) { fn call_me(num:) {
for i in 0..num { for i in 0..num {
println!("Ring! Call number {}", i + 1); println!("Ring! Call number {}", i + 1);
} }

View file

@ -25,7 +25,7 @@ mod verify;
fn main() { fn main() {
let matches = App::new("rustlings") let matches = App::new("rustlings")
.version(crate_version!()) .version(crate_version!())
.author("Olivia Hugger, Carol Nichols") .author("Marisa, Carol Nichols")
.about("Rustlings is a collection of small exercises to get you used to writing and reading Rust code") .about("Rustlings is a collection of small exercises to get you used to writing and reading Rust code")
.arg( .arg(
Arg::with_name("nocapture") Arg::with_name("nocapture")