Commit graph

58 commits

Author SHA1 Message Date
mo8it
394ca402a8 Remove the info_toml_content field 2024-04-07 23:57:54 +02:00
mo8it
93f8d1610d Some renamings 2024-04-07 23:37:40 +02:00
mo8it
99c9ab467b Implement resetting 2024-04-07 22:43:59 +02:00
mo8it
c2daad8340 Return an error instead of exiting 2024-04-07 01:15:47 +02:00
mo8it
919ba88413 Use the pretty format when testing even with -q 2024-04-05 00:43:36 +02:00
mo8it
14f3585816 Make cargo run work 2024-04-01 02:11:52 +02:00
mo8it
fb32d0b86f Remove redundant test 2024-03-31 18:59:07 +02:00
mo8it
c1de4d46aa Some improvements to error handling 2024-03-31 18:25:54 +02:00
mo8it
82b563f165 Use Cargo instead of rustc 2024-03-31 16:55:33 +02:00
mo8it
79ca821e26 Fix tests 2024-03-30 20:48:30 +01:00
mo8it
3ff9b0cd2a POC done 2024-03-28 22:11:16 +01:00
mo8it
5b4103bbac Remove unneeded ./ from relative paths 2024-03-28 21:10:31 +01:00
mo8it
a27741b131 Merge branch 'main' into performance 2024-03-27 15:00:57 +01:00
Mo
07dec76f7c
Merge pull request #1916 from mo8it/command
Pipe the output of command to null instead of capturing and ignoring it
2024-03-27 14:24:16 +01:00
mo8it
853d0593d0 Derive Eq when PartialEq is derived 2024-03-26 17:47:33 +01:00
mo8it
078f6ffc1c Add comments 2024-03-26 02:26:26 +01:00
mo8it
7a6f71f090 Fix context of previous lines and improve readability 2024-03-26 02:14:25 +01:00
mo8it
d911586788 Pipe the output to null instead of capturing and ignoring it 2024-03-25 17:21:54 +01:00
mo8it
bdf826a026 Make "I AM NOT DONE" caseless 2024-03-24 22:22:55 +01:00
mo8it
c0c112985b Replace regex with winnow 2024-03-24 19:18:19 +01:00
mo8it
0aeaccc3a5 Optimize state 2024-03-24 18:34:46 +01:00
markgreene74
3c4fde4610 fix(watch): update the CLIPPY_CARGO_TOML_PATH
... to reflect the changes to the exercise directory names.

The path exercises/clippy replaced with exercises/22_clippy.

closes #1726
2023-10-16 22:41:34 +01:00
DocWilco
511e334365 fix(cli): stop littering pdb files on windows 2023-09-27 22:02:14 +02:00
jyn
b88c23897f Give a more helpful error when a file is missing
Previously, this would just say "missing file". Now it shows the path of the file that was missing,
which should make it easier to debug what went wrong.
2023-09-25 03:41:13 -04:00
mo8it
571bab20c1 Run clippy --fix 2023-08-26 23:07:20 +02:00
wjwrh
1721ddc231 Fix the problem of different edition between rustc and rust-analyzer 2023-02-05 14:10:23 +08:00
Yuri Astrakhan
2940ad059d Apply uninlined-format-args clippy lint
This lint should also be applied to the excersies,
but I am not certain how to run it for all non-crate individual files.

To re-run:

```
rustup run nightly cargo clippy --fix -- -A clippy::all -W clippy::uninlined_format_args
```
2022-10-12 16:43:07 -04:00
KatanaFluorescent
a500ed2c3c
change edition to 2021 in exercices.rs
workaround for this issue https://github.com/rust-lang/rustlings/issues/1022
2022-07-01 16:49:36 +02:00
radicale
71a06044e6
fix(clippy1): Set clippy::float_cmp lint to deny (#907) 2022-02-04 14:39:09 +01:00
Galih wisnuaji
9b27e8d993 chore : replace filter_map() with find_map() 2021-12-24 13:48:43 +07:00
LIU JIE
06d5c0973a
fix(cli): typo in exercise.rs (#848) 2021-09-21 11:50:15 +02:00
Ben Armstead
1cd9328a58
fix(cli): remove unnecessary borrows (#829)
* Update dependencies

* Format better and remove unnecessary borrows
2021-08-24 14:06:30 +02:00
mokou
7928122fce feat: Replace clap with argh
I’ve been wanting to do this for a while, but always procrastinated on it. We’ve been using Clap since the 2.0 rewrite, but Clap is known to be a fairly heavy library. Since Rustlings is usually peoples’ first contact with a Rust compilation, I think it’s in our best interests that this complation is as fast as possible. In effect, replacing Clap with the smaller, structopt-style `argh` reduces the amount of crates needing to be compiled from 82 to 60.

I also think this makes the code way easier to read, we don’t need to use Clap’s methods anymore, but can switch over to using pure Rust methods, e.g., switches are booleans, options are Option<String>s or the like, and subcommands are just structs.
2021-04-21 10:08:26 +02:00
Zerotask
bd48544e25
style: formatted files with rustfmt 2021-04-18 15:40:47 +02:00
Matt Lebl
01e7f27aa6 refactor: change from match to if for NO_EMOJI 2021-03-20 11:53:40 -07:00
Matt Lebl
8d62a99637 feat: Replace emojis when NO_EMOJI env variable present 2021-03-19 02:16:07 -07:00
circumspect
833df0b8b3
chore: fix typo
Co-authored-by: Chenkail <40770208+Chenkail@users.noreply.github.com>
2021-03-12 15:26:57 +01:00
Abdou Seck
0b9220c1fc Add looks_done method to Exercise to expose a resolution state 2021-01-08 13:21:00 -05:00
Roberto Vidal
5643ef05bc fix: more unique temp_file 2020-10-30 14:39:28 +01:00
Alexx Roche
c03e1e6c6c
chore: fixed test name 2020-09-27 21:57:51 +02:00
Étienne Barrié
81f8c2f83c chore: Run cargo fmt 2020-08-10 10:42:54 -04:00
mokou
55a9284665 chore: Move from master branch to main branch 2020-06-14 14:48:51 +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
Rohan Jain
3ab084a421 fix(run): compile clippy exercise files
Additionally to running clippy, also compile the exercise file so that
`rustling run clippy1` works after a successful completion of the
exercise.

closes #291

Signed-off-by: Rohan Jain <crodjer@gmail.com>
2020-04-11 08:58:23 +02: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
Roberto Vidal
43dc31193a refactor: exercise evaluation
Exercise evaluation (compilation + execution) now uses Results
Success/failure messages are standardized
2020-02-20 20:27:05 +01:00
marisa
48c35bcfbc fix tests 2019-11-11 17:28:19 +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