Skip to content

Commit 62e5524

Browse files
HUGE UPDATE. also updated to Clap v3 and derive
1 parent d8ecfe4 commit 62e5524

File tree

13 files changed

+1020
-691
lines changed

13 files changed

+1020
-691
lines changed

CHANGELOG.md

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,47 @@
11
# Changelog for Ferium
22

3+
## [3.10.0] - 16.01.2022
4+
5+
HUGE UPDATE
6+
7+
### Project and Testing
8+
- Upgraded to Clap 3.0
9+
- Removed unit tests
10+
- Added every single sub(sub)command to the integration tests
11+
- The integration tests are now fully automatic because we can now pass options without the interactive UI
12+
13+
### Main
14+
- Getting the config file no longer exits the program early when creating a new config file
15+
- A more helpful error message for when decoding the config file fails
16+
- The `profile create` subcommand now runs seperately before the current profile is read
17+
- Multiple new command have been created such as `list_profiles()`, and `delete()`
18+
- Many commands have been revamped to allow the arguments to be passed through the CLI rather than through a UI
19+
- The `profile configure` command's UI now has an option to change the profile's name
20+
21+
### Arg Parsing
22+
- Removed `cli.yaml` and switched from the deprecated yaml parsing to #[derive] based arg parsing
23+
- Renamed `add`, `add-repo`, and `config` commands to `add-modrinth`, `add-github`, and `configure`
24+
- The `create` and `config` commands are now under a new subcommand `profile`
25+
- `profile delete` and `profile list` subsubcommands have been added
26+
- The following commands have had options added to them so now using the interactive UI is optional. This also allows for fully automatic tests
27+
- Remove
28+
- Switch
29+
- Configure
30+
- Create
31+
- Delete
32+
33+
### Error handling
34+
- There are now 2 errors for quitting
35+
- The `Quit` error stores its error message as a tuple `&'static str` so that raw strings can be used
36+
- The `QuitFormatted` error stores its error message as a tuple `String` so that `format!()` can be used for more informative error messages
37+
38+
### Configuration (`json.rs`)
39+
- The `mod_loader` field in `Profile` is now an enum
40+
- The `Profile::new()` is now `Profile::create_ui()`
41+
- `create_ui()` now checks that the name provided does not already exist, if so it will ask for a new name
42+
- Getting the path to the config file has been extracted to `get_config_file_path()`
43+
- If `get_config_file()` does not find a config file, it now just creates an empty config, writes to it, and continues to return the config file
44+
345
## [3.9.0] - 23.12.2021
446

547
Merry Christmas and a Happy New Year!

0 commit comments

Comments
 (0)