v6.4.0

a16z-infra/JungleGymv6.4.0Nov 11, 2024by mo8it

AI Summary

This release enhances the exercise management workflow by adding search capabilities, a 'check all' feature with animations, and various UX improvements like pausing input.

Key Highlights

  • Added searchable exercise list (via 's' or '/')
  • New 'check all' command and prompt option
  • Added animation for checking all exercises
  • New option to reset current exercise file
  • Fixed bad contrast in light theme lists

New Features

  • Searchable exercise list
  • Check all exercises command and option
  • Reset current exercise file option
  • Pause input while running an exercise
  • Allow 'dead_code' for all exercises and solutions

Full Release Notes

### Added

- The list of exercises is now searchable by pressing `s` or `/` πŸ”οΈ (thanks to [@frroossst](https://github.com/frroossst))
- New option `c` in the prompt to manually check all exercises βœ… (thanks to [@Nahor](https://github.com/Nahor))
- New command `check-all` to manually check all exercises βœ… (thanks to [@Nahor](https://github.com/Nahor))
- Addictive animation for showing the progress of checking all exercises. A nice showcase of parallelism in Rust ✨
- New option `x` in the prompt to reset the file of the current exercise πŸ”„
- Allow `dead_code` for all exercises and solutions ⚰️ (thanks to [@huss4in](https://github.com/huss4in))
- Pause input while running an exercise to avoid unexpected prompt interactions ⏸️
- Limit the maximum number of exercises to 999. Any third-party exercises willing to reach that limit? πŸ”

### Changed

- `enums3`: Remove redundant enum definition task (thanks to [@senekor](https://github.com/senekor))
- `if2`: Make the exercise less confusing by avoiding "fizz", "fuzz", "foo", "bar" and "baz" (thanks to [@senekor](https://github.com/senekor))
- `hashmap3`: Use the method `Entry::or_default`.
- Update the state of all exercises when checking all of them (thanks to [@Nahor](https://github.com/Nahor))
- The main prompt doesn't need a confirmation with ENTER on Unix-like systems anymore.
- No more jumping back to a previous exercise when its file is changed. Use the list to jump between exercises.
- Dump the solution file after an exercise is done even if the solution's directory doesn't exist.
- Rework the footer in the list.
- Optimize the file watcher.

### Fixed

- Fix bad contrast in the list on terminals with a light theme.

![out](https://github.com/user-attachments/assets/2bb3c7a7-f751-4972-9309-8566cf6e443c)