Commit Graph

243 Commits

Author SHA1 Message Date
Mukund Bhudia 9642f5a3f6 feat: Added iterators1.rs exercise 2020-08-04 12:57:01 +01:00
Chad Dougherty 523d18b873
feat(try_from_into): Add insufficient length test (#469) 2020-07-13 11:39:05 +02:00
Benjamin Jones bb5f404e35 chore: Alter whitespace for consistency
* Add newline after "I AM DONE" in exercises for consistency
* Remove trailing whitespace from exercises
2020-07-11 11:50:54 -07:00
DEWA Kazuyuki/出羽和之 4b6540c71a
fix(enums3): Update Message::ChangeColor to take a tuple. (#457) 2020-07-08 11:56:43 +02:00
fmoko 75c0053bb1
Merge pull request #433 from SebastienCaunes/fix#432
fix : Use of integer for prices, therefore also for weight
2020-06-22 00:09:09 +02:00
Alexx Roche 113cdae2d4
fix(arc1): Passively introduce attributes (#429)
Ensure that std::sync::Arc is actually used, as this exercise can be compiled using things already learnt in previous exercises.
2020-06-14 12:15:35 +02:00
Sebastien Caunes 9ca08b8f2b fix : Use of integer for prices, therefore also for weight
rename confusing "from" and "to" to sender_country and recipient_country as suggested
2020-06-11 11:44:47 -05:00
millefalcon 307252e9ae Added example to show the AsRef working 2020-06-08 07:51:34 -04:00
Alexx Roche bb2ca25110
fix(box1): fix comment typo (#426)
Doesn't effect the code.
2020-06-06 12:07:39 +02:00
Alexx Roche 5563adbb89
fix: fix quiz naming inconsistency (#421)
Inconsistent naming when compared with the other quiz files.
2020-06-03 20:06:35 +02:00
Alexx Roche 524e17df10
fix(variables6): minor typo (#419)
Looks like this was cloned from variables5.rs
2020-06-03 13:34:43 +02:00
fmoko 73e848e96f
Merge pull request #416 from danwilhelm/traits-readme
feat: Add traits README
2020-05-30 17:58:31 +02:00
fmoko 5f0806967c
Merge pull request #409 from AlexandruGG/feature/box-exercise 2020-05-30 17:58:16 +02:00
Dan Wilhelm 173bb14140 feat: Add traits README 2020-05-28 20:21:33 -07:00
fmoko 918f310674
Merge pull request #410 from tsauvajon/fix-option1
fix(option1): Don't add only zeros to the numbers array
2020-05-29 00:33:00 +02:00
Dan Wilhelm 0311c03735 chore: Limit generics3 lines to 90 chars 2020-05-27 23:39:11 -07:00
AlexandruGG df81141d6f Address PR feedback: add tests 2020-05-27 10:03:59 +01:00
Thomas Sauvajon cce6a44277
fix(option1): Don't add only zeros to the numbers array 2020-05-27 18:55:12 +10:00
AlexandruGG 7479a4737b feat: Add box1.rs exercise 2020-05-26 21:46:24 +01:00
Evan Carroll 06ef4cc654
fix: confine the user further in variable exercises
We want to teach a specific lesson. To ensure that we do, let's try to
provide more clarity on what the user should not do.
2020-05-25 10:09:11 +02:00
Jade McGough c7c3130507
chore: remove struct2 hint comment 2020-05-20 08:31:28 +02:00
Sanjay K 010a045692
feat: renames test to quiz, fixes #244
BREAKING CHANGE

* changed test to quiz: fixes issues in #244
* fixed info.toml: #244
* fixed naming related issues
2020-05-19 18:47:44 +02:00
fmoko 51666609f1
Merge pull request #365 from sjmann/generics-2-fix 2020-05-19 17:49:55 +02:00
Stefan Kupresak 10967bce57
fix(option2): Add TODO to comments (#400) 2020-05-16 22:48:18 +02:00
IkaR49 763aa6e378
feat: Rewrite try_from_into (#393) 2020-05-15 23:02:57 +02:00
Gaurang Tandon d6c0a688e6
fix(test2): name of type String and &str (#394) 2020-05-13 12:38:14 +02:00
Evan Carroll 2b20c8a0f5
fix(errorsn): Try harder to confine the user. (#388) 2020-05-06 21:12:15 +02:00
Siobhan Jacobson 09e89bbcd3 Update Message::Move in the enums3 test to take a Point. 2020-05-04 18:59:23 -04:00
fmoko 7c4b1f910c
Merge pull request #372 from DiD92/exercise_structs3 2020-05-03 19:44:26 +02:00
fmoko 3ceabe91f8
Merge pull request #383 from wrobstory/wrobstory-exercises 2020-05-03 19:44:08 +02:00
fmoko a39ffb2fb8
Merge pull request #368 from apatniv/update_test_case 2020-05-03 13:31:46 +02:00
apatniv 41f989135d Review Comments: Add other test cases 2020-05-02 20:41:11 -04:00
Rob Story f6cffc7e48 fix(option1): Add cast to usize, as it is confusing in the context of an exercise about Option 2020-05-02 16:39:37 -07:00
Rob Story 1da84b5f7c feat: Add if2 exercise 2020-05-02 13:02:16 -07:00
Christofer Bertonha c301814d68 chore: Remove deprecated description from error_handling/errorsn.rs 2020-05-02 18:30:11 +02:00
Jihchi Lee a901499ede
fix(from_into.rs): typo 2020-04-30 15:53:50 +02:00
Dan Wilhelm 9590082848 fix: update iterator and macro text for typos and clarity
- /macros/README.md: Typo "modules" => "macros"
- iterators2.py: Reduce line length to <90-char width.
- iterators4.py: Update 'fun' => 'challenge' as per PR#177
- rustlings hint iterators4: improve clarity
2020-04-29 19:11:54 -07:00
Dídac Sementé Fernández b66e2e0962 feat: Added exercise structs3.rs 2020-04-27 20:26:34 +02:00
apatniv 19fb1c240c test: Add missing test case for from_str exercise 2020-04-21 22:51:56 -04:00
Steven Mann 630ff0e00b
chore: add explanatory comment to clippy1 2020-04-21 18:50:00 +02:00
sjmann 964c974a02 fix: update generics2 closes #362 2020-04-21 13:34:25 +01:00
lebedevsergey c9e4f2cfb4
fix: confusing comment in conversions/try_from_into.rs
Co-authored-by: Lebedev <sergey.lebedev@corp.mail.ru>
2020-04-17 15:43:01 +02:00
Ufuk Celebi 6c3cc2caf5
chore: delete orphaned `error_handling/option1.rs`
`error_handling/option1.rs` has been replaced by `option/option1.rs` and
is not referenced in `info.toml` any more.
2020-04-15 23:52:31 +02:00
Said Aspen 5999acd24a
feat: Add exercise variables6 covering const (#352) 2020-04-14 10:13:20 +02:00
fmoko 052f0aa7d4
Merge pull request #292 from Tuxified/patch-1
Remove duplicate not done comment
2020-04-08 11:23:49 +02:00
Tonći Galić 60393999b8
remove bottom comment instead of top 2020-04-08 11:00:11 +02:00
Roberto Vidal b3a3351e8e
fix: revert primitive_types4 (#296) 2020-04-08 10:42:35 +02:00
Sanjay K 86b5c08b9b
feat: Add Option2 exercise (#290)
* added option2

* changed up the exercise, modified the help section

* Update exercises/option/option2.rs

Co-Authored-By: fmoko <mokou@posteo.net>

* Update exercises/option/option2.rs

Co-Authored-By: fmoko <mokou@posteo.net>

* Update exercises/option/option2.rs

Co-Authored-By: fmoko <mokou@posteo.net>

Co-authored-by: fmoko <mokou@posteo.net>
2020-04-07 20:16:10 +02:00
Tonći Galić dab90f7b91
Remove duplicate not done comment
As indicated in #259 , I found it confusing to have 2 comments as the code wouldn't compile unless I solved both issues (I used the script from #281 to remove a comment and use `:wn` to go to next exercise, hence this tripped me).
2020-04-07 17:00:45 +02:00
Roberto Vidal 3b6d5c3aaa feature: makes "compile" exercise print output, resolves #270
When running "compile"-mode exercises in interactive `verify` mode,
we print their output when we prompt the learner if they want to
continue. This improves the "experimentation" experience, since
trying different things does produce a visible change.
2020-04-06 16:17:14 +02:00
fmoko 7ce42941ea
Merge pull request #282 from sanjaykdragon/master
feat: added option exercise
2020-04-05 15:58:09 +02:00
fmoko b135b589e0
Merge pull request #280 from sjmann/generics-exercises
feat: added generics exercises
2020-04-05 14:40:34 +02:00
Sanjay K 05ca3d77f7 Merge branch 'master' of https://github.com/sanjaykdragon/rustlings 2020-04-02 08:41:14 -04:00
Sanjay K 6deee7e3e9 fixed spacing 2020-04-02 08:40:59 -04:00
Sanjay K 9788496a85
Update option1.rs 2020-03-11 13:44:41 -04:00
Sanjay K 6d3a412d47
Update option1.rs 2020-03-11 13:44:10 -04:00
skim bc22ec382f
adds additional test to meet exercise rules 2020-03-11 07:58:04 -07:00
Sanjay K 135e5d47a7 feat: added excercise for option 2020-03-05 15:52:54 -05:00
sjmann 0f8001ea44 add I AM NOT DONE comments 2020-02-28 00:31:55 +00:00
sjmann 29b30ec946 Merge branch 'master' of https://github.com/sjmann/rustlings into generics-exercises 2020-02-28 00:19:45 +00:00
sjmann 76be5e4e99 feat: added new exercises for generics 2020-02-28 00:09:08 +00:00
Mario Reder 1e2fd9c92f feat: Add clippy lints
- adds a new 'clippy' category for exercises
- clippy exercises should throw no warnings
- install script now also installs clippy

is related to https://github.com/rust-lang/rust-clippy/issues/2604
2020-02-26 14:07:07 +01:00
bors 78295ce92f Auto merge of #274 - sjmann:master, r=fmoko
chore: fixed merge conflicts from traits exercises added by s-marios

I hope this doesn't step on any toes but I wanted to try the traits exercises from #216 so I updated them to match the new structure with hints included in info.toml
2020-02-25 21:27:39 +00:00
Stig Johan Berggren a45486f2d0
Add a second test case 2020-02-25 14:25:03 +01:00
Stig Johan Berggren 8b971ffab6
Enable test for exercise test4 2020-02-25 14:13:10 +01:00
Steven Mann dc84aacc65
remove confusing comment wording 2020-02-25 11:00:09 +00:00
sjmann b559cdd73f added traits exercises 2020-02-25 09:48:50 +00:00
sjmann a3f70124dc fixed typo 2020-02-22 14:28:07 +00:00
sjmann bec8e3a644 reworded missing exercise explanation 2020-02-22 13:04:37 +00:00
Jason Tsai 39fa7ae8b7 chore: Correct test command in tests1.rs comment 2020-01-29 13:48:43 +08:00
Paul Bissex ade52ffb73
Fixed mangled sentence from book; edited for clarity 2020-01-25 03:24:14 -05:00
Torben Jonas 0c73609e6f feat: Add variables5.rs exercise
closes #260
2020-01-14 21:10:07 +01:00
gnodarse fd57f8f2c1 Created consistent money unit 2019-12-29 19:15:32 -05:00
dmitri-mamrukov dfdf8093eb
Enable a test and improve per clippy's suggestion. 2019-12-23 21:37:09 -05:00
Abdou Seck fc26b5e151 I AM NOT DONE comment in conversions exercise files 2019-12-16 11:33:00 -05:00
Abdou Seck 0c85dc1193 feat: Add type conversion and parsing exercises 2019-12-16 09:12:13 -05:00
marisa fe10e06c37
fix(tests1): Change test command
Closes #243.
2019-12-16 13:05:25 +01:00
Rahat Ahmed 54571a5fca
fix(iterators2): Remove reference to missing iterators2.rs 2019-12-07 23:25:13 -08:00
Jens 31c25ebb50
Add link to chapter on pattern syntax
After being stuck on exercise enums3.rs for about an hour or two, having read the entire chapter on enums 2-3 times, and still being unable to complete the exercise, i started broadening my reading. I finally found the answer in the rust docs via google.
2019-11-24 09:28:33 +01:00
Roberto Vidal b565c4d3e7 fix: line numbers in several exercises and hints
The introduction of `I AM NOT DONE` shifted the lines of all
exercises, which now need adjustment.
2019-11-14 08:21:56 +01:00
Chris Keschnat c42c3b2101
fix(arc1): Fix some words in the comment 2019-11-12 18:37:23 +01:00
Chris Keschnat fda5a47069 fix(variables1): Correct wrong word in comment 2019-11-12 17:33:25 +01:00
Roberto Vidal ded2c034ba fix(primitive_types4): update outdated comment 2019-11-12 12:52:28 +01:00
marisa 1a7bb5a400 Address feedback 2019-11-11 17:47:45 +01:00
marisa ec2d4bd3ee
Merge branch 'master' into refactor-hints 2019-11-11 17:21:06 +01:00
marisa 9bdb0a12e4 feat: Refactor hint system
Hints are now accessible using the CLI subcommand `rustlings hint
<exercise name`.

BREAKING CHANGE: This fundamentally changes the way people interact with exercises.
2019-11-11 16:51:38 +01:00
Roberto Vidal 2cdd61294f feat: improve `watch` execution mode
The `watch` command now requires user action to move to the next
exercise.

BREAKING CHANGE: this changes the behavior of `watch`.
2019-11-11 16:23:35 +01:00
marisa f72e5a8f05 fix(structs1): Remove misleading comment 2019-11-11 13:57:59 +01:00
marisa 6dcecb38a4 fix(strings): Move Strings before Structs
Closes #204.
2019-11-11 13:46:42 +01:00
marisa dcfb427b09 fix(errors3): Update hint
Closes #185.
2019-11-11 13:37:43 +01:00
marisa ad03d180c9 fix(if1): Remove `return` reference
This closes #153.
2019-11-11 13:34:21 +01:00
bors c6dad28ddc Auto merge of #224 - nyxtom:feat-enums, r=fmoko
feat: Add enums exercises

Creates an exhaustive list of enum exercises. This goes through the basics of different ways to derive enums with mixed data type variants, as well as the use of the all important `match` operator.
2019-11-09 09:41:36 +00:00
marisa 79a569422c
fix: Rewrite test1 logic 2019-10-29 20:53:41 +01:00
Thomas Holloway dc15032112 feat: Add enums exercises 2019-10-28 22:49:49 -05:00
Scott Sweeny 2821227acf chore: Clarify comment in exercises/test1.rs
closes #194

The author of issue #194 suggests that the wording of the comment is at
least ambiguous about the desired results. I believe this change more
clearly describes the expectation of the exercise.
2019-10-28 23:08:46 -04:00
bors 2191ef7eee Auto merge of #219 - vyaslav:master, r=fmoko
Added exercise for struct update syntax

Added one exercise for struct update syntax `struct2.rs`
2019-10-28 22:56:54 +00:00
Niklas Anderson ead4f7af9e fix(option1): Fix arguments passed to assert! macro 2019-10-25 14:27:24 -07:00
Viacheslav Avramenko 1c4c8764ed feat: Added exercise for struct update syntax 2019-10-21 14:50:59 +02:00
Damian S 8109cbad97 fix(errorsn.rs) Update the deprecated syntax by adding dyn to trait objectscloses #211 2019-08-21 11:44:42 +01:00
Dylan Nugent 5b1e673cec fix(primitive_types4): Fail on a slice covering the wrong area
This commit converts primitive_types4 to a test and asserts that the
slice given is equal to the expected slice.

The intent of the primitive_types4 exercise appears to be to ensure the
user understands inclusive and exclusive bounds as well as slice syntax.
`rustlings` commands using `compile` do not verify that a specific
println is reached and, in the case of `watch` and `verify` (but not
`run`), they do not output the `println`s at all.

This fix is semantically similar to #198. It does not take a stance on
the correct way to handle this for all exercises; see #127. There are
likely other exercises whose intent are masked by this issue.
2019-08-17 17:16:19 -07:00
Enrico Miccoli 76b4cb5c00
chore: Correct typo 2019-08-12 11:45:40 +02:00
Niklas Anderson e3931718fb chore(iterators2): Add exercise instructions 2019-08-09 07:38:21 -07:00
Niklas Anderson 4cde86643e fix(iterators2): Remove syntax resulting in misleading error message
closes #199
2019-08-09 07:37:27 -07:00
Andre Pratama e0db987441
docs: Fix wrong title
fix #200
2019-07-27 22:14:48 +07:00
Niklas Anderson a750e4a1a3 fix(option1): Add test for prematurely passing exercise
Fixes the bug referenced in #160, but does not address the larger feature work referenced by the issue.
2019-07-26 16:58:12 -07:00
Pete McFarlane 4086d463a9
fix(test1): Swap assertion parameter order
`Expected` should come before `actual`, other wise it leads to confusing compiler messages, e.g.
```
note: expected type `()`
         found type `{integer}`
```
2019-07-13 13:31:57 +01:00
Jesse 9288fccf07 feat(iterators2): adds iterators2 exercise including config 2019-07-03 21:06:24 +10:00
Jesse 89d5186c0d fix(test1): renamed function name to snake case
closes #180
2019-06-29 01:00:10 +10:00
bors aaad60d07e Auto merge of #172 - miller-time:fix-book-links, r=komaeda
chore: Fix a couple broken book links

While I was fixing these, I figured maybe it's good to just use a consistent URL for book links: https://doc.rust-lang.org/book/

Is there a plan for what to do with this old 1.4.0 example that doesn't exist in the current version of the book? Perhaps at least include a disclaimer when recommending that folks check it out?

34e31232df/exercises/threads/README.md (L1)
2019-06-23 10:31:50 +00:00
bors 5f16469807 Auto merge of #171 - miller-time:rustfmt-exercises, r=komaeda
chore: Clean up some formatting in exercises

I noticed some formatting that isn't consistent with the `rustfmt` style and tried my best to run it on the files in the exercises directory (which does fail for files that can't compile!), which just caught some minor whitespace things here and there.

Note: also can't just apply `rustfmt` blindly because of the blank lines that lead to the hint comments
2019-06-23 10:25:48 +00:00
bors 752bc27e2b Auto merge of #179 - briankung:fix_irrefutable_let_pattern_structs1, r=komaeda
Fixes the irrefutable let pattern warning in `structs1.rs`

PR https://github.com/rust-lang/rustlings/pull/163 accidentally introduced an error using some versions of the Rust compiler where the compiler would (rightly!) complain about an irrefutable let pattern. I have no idea why this did not occur in all versions of the compiler, but here is a way around it.
2019-06-20 15:02:20 +00:00
Brian Kung cc6a14104d Fixes the irrefutable let pattern warning 2019-06-20 09:46:49 -05:00
Russell Cousineau eb13c2b6af chore: Clean up some formatting in exercises 2019-06-11 07:14:43 -07:00
Russell Cousineau 63c133e4a3 chore: Fix a couple broken book links 2019-06-11 07:13:05 -07:00
bors 5586613eec Auto merge of #170 - miller-time:rename-iterator-exercise, r=komaeda
fix(iterators): Rename iterator3.rs

fixes #155
2019-06-11 12:53:58 +00:00
Rohan Prinja 080d6cdd11 chore: Fix link to Arc<T> in the book 2019-06-09 13:45:53 +02:00
Russell Cousineau 433d2115bc fix(iterators): Rename iterator3.rs 2019-06-07 14:42:44 -07:00
bors 41170ce341 Auto merge of #164 - HanKruiger:master, r=komaeda
Fix broken link
2019-05-26 14:07:16 +00:00
gushroom fd1441d122 fixed outdated links 2019-05-26 14:57:56 +02:00
HanKruiger e1422c6443 Fix broken link 2019-05-26 14:45:04 +02:00
Brian Kung 9b92aa08ae Adds a simple exercise for structures 2019-05-25 06:39:58 -05:00
bors 8bf8cbbd61 Auto merge of #162 - c-rustacean:rustfmt-and-ws-fixes, r=komaeda
errorsn.rs: Separate also the hints from each other to avoid accidental viewing
2019-05-23 11:01:15 +00:00
Eddy Petrisor f507844102 errorsn.rs: Separate also the hints from each other to avoid accidental viewing
Signed-off-by: Eddy Petrisor <eddy.petrisor@gmail.com>
2019-05-23 12:21:42 +03:00
bors fffbb60ed9 Auto merge of #161 - c-rustacean:rustfmt-and-ws-fixes, r=komaeda
Rustfmt and ws fixes
2019-05-22 12:29:20 +00:00
Eddy Petrisor 9aec4abc4d rustfmt the exercises
Signed-off-by: Eddy Petrisor <eddy.petrisor@gmail.com>
2019-05-22 14:50:40 +03:00
Eddy Petrisor a53b3f199f iterator3.rs: whitespace fixes
Signed-off-by: Eddy Petrisor <eddy.petrisor@gmail.com>
2019-05-22 14:50:40 +03:00
Eddy Petrisor d6d696b66a errorsn.rs: Separate hints from code, so hints are not accidentally seen
Signed-off-by: Eddy Petrisor <eddy.petrisor@gmail.com>
2019-05-22 14:50:39 +03:00
Julien Bisconti 187d2ad226
Update errors1.rs
Add Result type signature as it is difficult for new comers to understand Generics and Error all at once
2019-05-12 14:54:37 +02:00
Yvan Sraka a71bc62c29
Add errors to exercises that compile without user changes 2019-04-22 00:09:30 +02:00
Diod FR d7e58ee1af
Fix links by deleting book version 2019-04-08 22:02:04 +02:00
zacanger c5a374fbf2
Fix permissions on source files 2019-03-23 14:19:42 -06:00
Kyle Isom c1f4257a91 errors2.rs: update link to Rust book. 2019-03-16 19:22:06 -07:00
liv 02ceb0ba8c fix test command execution
seems like i forgot that you actually need to run executables created
with `rustc --test`! this also reworks the "test1" exercise a bit

closes #108
2019-02-15 12:06:05 +01:00
Jean-Philippe Moresmau 4e3bd8d51b Renamed readme files properly 2019-01-29 21:19:04 +01:00
Jean-Philippe Moresmau 3073ff3f82 Renamed readme files properly 2019-01-29 21:16:59 +01:00
liv 05f65d67ae thematically refactor modules2 2019-01-23 21:56:05 +01:00
liv a49a22071a redo the section readmes 2019-01-23 21:02:06 +01:00
liv dc1f3b79f8 add tests; refactor exercise links 2019-01-23 20:48:01 +01:00
liv 17e12433cb add a test 2019-01-09 21:47:50 +01:00
liv b90f642029 remove the ex*.rs files 2019-01-09 21:26:12 +01:00
delet0r b0c9b33978 Changed Rust Book versions in links to 2018
Forgot to add changes to last commit.
2018-11-27 10:54:01 +01:00
delet0r 0973e60056 Created sub READMEs for CLI only version
Sub READMEs contain the relevant resources from the main
README of the web version. All second edition Rust Book links
were updated to the 2018 edition.

Fixed to typos in main README.md.
2018-11-26 16:43:42 +01:00
olivia f7846af7ac right let's try this one again 2018-11-09 20:31:14 +01:00