Implement behavior to clean up numeric suffixes in exercise directories
- Dominant language
- Go
- Stars
- 1.4k
- Forks
- 363
- Avg merge
- 6d 13h
- Merged PRs (30d)
- 2
Description
When we launched the v2 site, the CLI had some funky behavior that sometimes adds a numeric suffix to the exercise directory. This behavior is going away.
The `exercism doctor` command should clean any of these up.
We can rely on the `workspace.PotentialExercises()` functionality to do this, and then group them into each group of related exercises. E.g.
- `ruby/hello-world`
- `ruby/hello-world-2`
- `ruby/hello-world-3`
These would all be in one group.
For each group where there are any exercises with a suffix we should have an interactive prompt. Something like:
```
Which one would you like to keep? Select your choice by typing the number.
1. hello-world
2. hello-world-2
3. hello-world-3
4. Skip this one. Do nothing and move on.
```
If they select one of the exercises (not _skip_), then:
- delete all but the selected one
- rename the selected one to remove the suffix (if it has one)
## Additional error handling
In the `download` command we should bail with an error if trying to download to an exercise directory with a numeric suffix.
In the `submit` command we should bail with an error if trying to submit an exercise that is in a directory with a numeric suffix.
The error messages should suggest running `exercism doctor`.
Contributor guide
Assessment
This issue has not been assessed yet.