Commit Graph

197 Commits

Author SHA1 Message Date
jayber 1ef8dacaf6 feat: add lifetimes exercises 2022-07-15 14:03:38 +02:00
exdx a3b5278b42 feat: add threads3.rs exercise 2022-07-15 13:28:49 +02:00
mokou b609f0431c feat: remove advanced_errs 2022-07-15 12:51:12 +02:00
mokou 8cfedb1673 feat(clippy): add clippy3 2022-07-15 12:28:47 +02:00
mokou 7fc393bed4 chore: remove quiz4 2022-07-15 12:13:40 +02:00
mokou d3a335bc64 feat(macros): add hint comments 2022-07-15 12:05:26 +02:00
jaystile b4f52cb937 feat: Adding threads1.rs with a focus on JoinHandles and waiting for
spawned threads to finish. Moved the original threads1.rs to threads2.rs
with the focus on the Mutex and modifying shared data. #892
2022-07-15 11:58:26 +02:00
mokou 20024d40c5 feat(iterators): update hint comments 2022-07-14 18:29:09 +02:00
mokou cf9629cb0e feat: move box/arc behind iterators 2022-07-14 18:17:23 +02:00
mokou 98b8d3f17d feat(traits): add hint comments 2022-07-14 18:14:41 +02:00
mokou 5979d408a9 feat: move generics3 to be quiz3 2022-07-14 18:11:18 +02:00
mokou c34e2adcbb feat(errors): Improve comments and hints 2022-07-14 18:02:33 +02:00
Noah Cairns 5e1ca4b995 fix(errors5): improve exercise instructions 2022-07-14 17:59:29 +02:00
mokou b71feed824 feat(options): add hint comments 2022-07-14 17:53:42 +02:00
mokou b644558c19 fix: rename option to options 2022-07-14 17:34:50 +02:00
mokou c64b340622 feat: rework quiz2 2022-07-14 13:24:15 +02:00
mokou f443f4e7b3 feat: move quiz2 to be strings4 2022-07-14 13:01:40 +02:00
Sateesh Basavaraju 1e54bc61e8 feat: Add hashmap3 exercise. 2022-07-14 12:57:47 +02:00
mokou c1ed6b10fe feat(strings): add strings3 2022-07-14 12:31:28 +02:00
mokou f5e4c16eed feat(strings): move before modules 2022-07-14 12:18:21 +02:00
mokou c6bc97adc1 feat(enums3): add hint comment, remove enums1 hint 2022-07-14 12:11:38 +02:00
Ryosuke YASUOKA d0e8efd19e feat(enums3): Add hint 2022-07-14 12:11:15 +02:00
mokou 4dffa0d10d fix(structs1): rename to unit-like struct 2022-07-14 12:00:46 +02:00
mokou 19bec50399 feat(structs1): convert structs to use i32 types 2022-07-14 11:59:29 +02:00
exdx 16ff57bbff fix(move_semantics2): clarify referencing 2022-07-12 15:26:55 +02:00
mokou bb0cf92b8b feat(move_semantics): clarify some hints 2022-07-12 15:25:31 +02:00
mokou 3c4c9c54c9 feat: remove collections to hashmaps 2022-07-12 15:18:05 +02:00
mokou 2f7fd51304 feat: move vec exercises into their own folder 2022-07-12 15:16:25 +02:00
mokou 8e1f617d34 feat(vec): update vec exercises 2022-07-12 15:05:47 +02:00
mokou 6020ec1fe2 feat: reorder vec and primtypes before moving 2022-07-12 14:53:56 +02:00
mokou 742fb08e01 feat(functions): more small fixes 2022-07-12 11:08:29 +02:00
Cooper Gillan b3ec8fe022 chore: Tweak punctuation in variables6.rs hint
While the meaning is still obvious as is, it makes a little more sense
to use a colon here =)
2022-07-11 13:53:31 +02:00
Cooper Gillan 9688609d08 chore: Update variables6.rs hint book link, wording
While the included link for variables6 does navigate to the correct
page, the header in the link itself does not actually exist so it
only loads the top of the page. There is, however, some text about
the difference between variables and constants in the "Constants"
section, so reword the hint some and update the link.
2022-07-11 13:53:09 +02:00
mokou 81edc4234f fix(variables): reorder and redo hint texts 2022-07-11 13:43:41 +02:00
mokou 9ed4b0683e fix(intro1): link to exercise file in hint 2022-07-11 13:20:18 +02:00
mokou 0aee54a82b chore: unify hint language use 2022-07-11 13:12:47 +02:00
Konstantin baca5d62ae
fix: update link to book 2022-06-13 21:30:25 +02:00
Jesse van Papenrecht 0bdb5207b5
typo fix in hint message if2 2022-05-22 18:56:26 +02:00
Lucas Grigolon Varela b0e079e6bf
Update info.toml 2022-05-20 20:26:37 -03:00
Ron Lusk b821ffdd33 docs(move_semantics5): Replace "in vogue" with "in scope" in hint
The hint for `move_semantics5` refers to "the range in which each
mutable reference is in vogue". Unless this is a deliberate
introduction of "vogue" (an admittedly-useful term because "scope"
isn't purely lexical, as in many other languages), it may be in error:
I have been unable to find the term used with reference to *Rust*
references.

Thus, I'm suggesting the replacement, in case it's been overlooked.
2022-04-22 09:04:36 -04:00
mokou 76a36dd385 chore: update errors1 comments and hint 2022-04-14 10:32:43 +02:00
Lucas Aries 3f0e1303e0
feat: Add move_semantics6.rs exercise (#908) 2022-03-29 15:02:35 +02:00
diannasoreil 4cde788d33
Merge pull request #733 from apogeeoak/intro
feat(intro): Proposal to add successfully compiling exercise as the first exercise.
2022-02-04 15:26:15 +01:00
Franklin van Nes f2650de369 fix(clippy1): Updated code to test correctness clippy lint with approx_constant lint rule
closes #888
2021-12-15 11:46:27 -05:00
alirezaghey 8ef4869b26
fix(functions5): Remove wrong new line and small English improvements (#885) 2021-12-15 10:44:21 +01:00
rlch 1c0fe3cbcc fix: few spelling mistakes 2021-10-02 23:59:23 +10:00
diannasoriel c2ed98deb3
Merge pull request #781 from tlyu/advanced-errs
feature: advanced errors
2021-09-25 11:18:55 +02:00
Taylor Yu abd6b70c72 feat: add advanced_errs2
New exercise to demonstrate traits that make it easier for other code
to consume our custom error types.
2021-09-25 11:18:23 +02:00
Taylor Yu 882d535ba8 feat: add advanced_errs1
New section and exercise to demonstrate the `From` trait for errors
and its usefulness with the `?` operator.
2021-09-25 11:18:21 +02:00
anuk909 dfd2fab4f3
feat(modules): update exercises, add modules3 (#822)
Co-authored-by: diannasoriel <mokou@fastmail.com>
2021-09-03 10:41:12 +02:00
ana df25684cb7 fix(move_semantics5): Clarify instructions 2021-07-29 12:37:15 +02:00
arlecchino 9bf4c5e8df
chore: clippy1 hint enhancement
Added some explanation and links about floating point representation and to use the clippy suggestion. (fixes #390)
2021-06-29 20:47:32 +02:00
arlecchino a4a1098766
Update info.toml
Co-authored-by: marisa <mokou@fastmail.com>
2021-06-29 13:41:16 +02:00
arlecchino 34ea029df8
chore: Update hint of iterators3
`collect()` needs some hint for standard_library_types/iterators3 exercise with doc link for understanding different return types via `FromIterator`.
2021-06-29 12:03:18 +02:00
Taylor Yu 2dc93cadda fix(from_str, try_from_into): custom error types
Remove the use of trait objects as errors from `from_str` and
`try_from_into`; they seem to have caused a lot of confusion in
practice. (Also, it's considered best practice to use custom error
types instead of boxed errors in library code.) Instead, use custom
error enums, and update hints accordingly. Hints also provide
some guidance about converting errors, which could be covered
more completely in a future advanced errors section.

Also move from_str to directly after the similar exercise `from_into`,
for the sake of familiarity when solving.
2021-06-24 21:33:41 -05:00
marisa a3ea37b76e
Merge pull request #771 from tlyu/iterators5-trait-tweak
fix(iterators5): derive Clone, Copy
2021-06-24 14:17:05 +02:00
Taylor Yu b7ddd09fab address review feedback
Adjust error text and naming to conform with best practices.
Use `map_err()` instead of `or()`. Wrap lower-level errors instead of
ignoring their details.

Also, don't "cheat" by bypassing the `new()` function in tests.

Fix a dangling reference in the try_from_into hints.
2021-06-09 23:27:53 -05:00
Taylor Yu 68d3ac567c feature: improve error_handling exercises
Add new exercises errors5 and errors6, to introduce boxed errors and
custom error enums more gently. Delete errorsn, because it tried to do
too much too soon.
2021-06-06 23:08:57 -05:00
Taylor Yu 50ab289da6 fix: rename result1 to errors4
Also put it in the ERROR HANDLING section where it probably belongs.
2021-06-06 23:08:54 -05:00
Taylor Yu 4e079fdd08 chore(iterators5): conciseness hint 2021-06-06 17:45:35 -05:00
Taylor Yu 1b85828548 fix: move_semantics5 hints
Improve the hints for move_semantics5, as well as the explanatory
comments in the code.

Previously, it was not clear what possible changes were allowed.
It seems that reordering the statements might be the intended solution.
The previous comment about not "adding newlines" doesn't make sense,
so treating it as "adding new lines" makes it more clear.
2021-05-22 22:09:58 -05:00
Taylor Yu 4c46e5e1a3 chore: minor typos in move_semantics5 hints 2021-05-22 21:56:14 -05:00
Sateesh 399ab328d8
feat: Add move_semantics5 exercise. (#746)
* feat: Add move_semantics5 exercise.

* feat: Add option3 exercise

* Address review comments. Fix typos, sentence formatting.

* Remove unwanted newline.

* Address review comments: make comment inline, fix format in print.
2021-05-17 14:10:40 +02:00
Taylor Yu 11d2cf0d60 fix(try_from_into, from_str): hints for dyn Error
Add hints about how to return the correct type for functions that
return `Result<_, Box<dyn Error>`. Some feedback from Discord suggests
that people run into trouble with that.
2021-05-15 14:01:17 -05:00
apogeeoak 21c9f44168 feat(intro): Add intro section. 2021-04-24 13:15:34 -04:00
Brandon Macer 81be404487
feat(arc1): Add more details to description and hint (#710)
Co-authored-by: bmacer <bmacer@cisco.com>
Co-authored-by: marisa <mokou@fastmail.com>
Co-authored-by: Roberto Vidal <vidal.roberto.j@gmail.com>
2021-04-21 14:50:03 +02:00
marisa 79cc657917
Merge pull request #646 from apogeeoak/iterator
Added iterators5.rs exercise.
2021-04-21 10:10:50 +02:00
apogeeoak 9c88ea9126 Improved iterators5.rs explanation. 2021-04-20 18:55:04 -04:00
marisa 2b766ef9f9
Merge pull request #648 from apogeeoak/iterator2
Moved iterators2.rs errors out of tests.
2021-04-20 11:24:10 +02:00
marisa bd3d9ac9d5
Merge pull request #649 from apogeeoak/iterator3
Enabled iterators3.rs to run without commented out tests.
2021-04-20 11:22:39 +02:00
Abdou Seck caf921a01f
Merge pull request #674 from Morsicus/fix/collections-exercises-naming
Update collections exercises naming
2021-04-13 10:39:18 -04:00
Taylor Yu c3e7b83178 fix: use trait objects for from_str
Use `Box<dyn error::Error>` to allow solutions to use `?` to propagate 
errors.
2021-04-04 18:56:10 -05:00
Mickael Fortunato bef39b1259 fix(collections): Naming exercises for vectors and hashmap 2021-03-18 19:11:04 +01:00
apogeeoak 96c56ab08a
chore: changed errors3 mode from test to compile 2021-03-12 20:04:29 +01:00
Cyrus Wyett 5157f56875
chore: fix typo
is however some --> are however some
2021-03-12 15:38:28 +01:00
apogeeoak c6712dfccd fix(iterators3): Enabled iterators3.rs to run without commented out tests. 2021-02-12 15:36:53 -05:00
apogeeoak baf4ba175b fix(iterators2): Moved errors out of tests.
Closes #359
2021-02-11 21:24:32 -05:00
apogeeoak b29ea17ea9 feat: Added iterators5.rs exercise. 2021-02-10 18:03:29 -05:00
John Baber-Lucero cddc1e86e7
fix(info): Fix typo (#635)
Co-authored-by: John Baber-Lucero <git@frundle.com>
2021-01-30 17:12:06 +01:00
fmoko 5772589dc3
Merge pull request #615 from wsh/docfixes
docs: mention flatten in the options2 hint
2021-01-04 14:12:11 +01:00
Will Hayworth e9b42bbc2a docs: mention flatten in the options2 hint 2021-01-03 03:42:39 -08:00
JuliaCao 90cfb6ff28 fix: added missing exercises to info.toml 2020-12-12 10:34:59 -08:00
JuliaCao 033bf1198f
feat: match exercise order to book chapters (#541)
Added exercise to book chapter mapping table to exercise README
2020-12-07 15:37:19 +01:00
Brock 9334783da3
fix(structs1): Adjust wording (#573)
Co-authored-by: fmoko <mokou@posteo.de>
2020-11-08 10:31:45 +01:00
sazid 633c00cf80 feat: Add HashMap exercises 2020-10-31 01:11:04 +06:00
sazid 0c12fa31c5 feat: Add Vec exercises 2020-10-31 01:10:49 +06:00
Rastamo e6bde22f9c
chore: primitive_types6 mode changed to test (#559)
primitive_types6 exercise was changed to test yesterday, but info.toml file wasn't updated.
I think this change should fix it.
2020-10-11 14:00:03 +02:00
fmoko 0f16463794
Merge pull request #489 from mukundbhudia/iterators1 2020-09-18 15:23:28 +02:00
Mukund Bhudia 8ff5fde88e
Update info.toml for typo fix
Co-authored-by: Andrew Marquez <andy2mgcc@gmail.com>
2020-09-18 10:40:11 +01:00
Ryan McQuen 3286c5ec19
fix(using_as): Add test so that proper type is returned. (#512) 2020-09-07 19:09:27 +02:00
Koalab99 ee7cdc66b3
chore: Removed extra whitespaces
Co-authored-by: Corentin ARNOULD <corentin.arn@gmail.com>
2020-08-27 19:51:19 +02:00
Mukund Bhudia 9642f5a3f6 feat: Added iterators1.rs exercise 2020-08-04 12:57:01 +01:00
iamcastelli ddd98ad75d
fix: Change then to than
`than` makes more grammatical sense than `then` in this context.
2020-06-27 15:58:53 +04:00
fmoko e1e453075f
Merge pull request #422 from AbdouSeck/show-tests-prints 2020-06-12 23:04:51 +02:00
Alexx Roche e6bd8021d9
fix(generics2): Guide students to the answer (#430) 2020-06-09 13:54:18 +02:00
Abdou Seck 8ad5f9bf53 feat: Add a --nocapture option to display test harnesses' outputs
This new feature can be accessed by invoking rustlings with --nocapture.

Both unit and integration tests added.

closes #262

BREAKING CHANGES:
The following function take a new boolean argument:
	* `run`
	* `verify`
	* `test`
	* `compile_and_test`
2020-06-04 11:18:26 -04:00
Alexx Roche 0dd1c6ca6b
fix: rename quiz1 to tests1 in info (#420)
`rustlings run tests1` wasn't working because of this typo.
2020-06-03 20:07:06 +02:00
fmoko 5f0806967c
Merge pull request #409 from AlexandruGG/feature/box-exercise 2020-05-30 17:58:16 +02:00
Allan Soares Duarte 500422d594
chore: Update variables6.rs book link 2020-05-28 09:33:15 +02:00
AlexandruGG df81141d6f Address PR feedback: add tests 2020-05-27 10:03:59 +01:00