Skip to content

Conversation

supersaiyansubtlety
Copy link
Member

@supersaiyansubtlety supersaiyansubtlety commented Aug 14, 2025

based on #277 rebased

Allows use of named args of the form some-name=some-value.
Particularly useful for commands with many optional args.

Unnamed positional arguments may still be used, even at the same time as named args, so long as all positional args come before named args.

Centralizes parsing of individual args into Argument and of commands' accepted args into ArgsParser.

Additionally, makes path verification more consistent and fixes the following bugs:

  • breaking: InvertMappingsCommand used OUTPUT_FOLDER instead of MAPPING_OUTPUT
  • InvertMappingsCommand args skipped an index
  • DecompileCommand used getWritableFolder for OUTPUT_JAR
  • users of ENIGMA_PROFILE didn't verify it was a file
  • ComposeMappingsCommand didn't declare its optional de/obf args

@supersaiyansubtlety supersaiyansubtlety self-assigned this Aug 14, 2025
@supersaiyansubtlety supersaiyansubtlety added enhancement New feature or request wip in progress labels Aug 14, 2025
@ix0rai ix0rai self-requested a review August 14, 2025 21:49
@supersaiyansubtlety supersaiyansubtlety removed the wip in progress label Aug 15, 2025
@supersaiyansubtlety
Copy link
Member Author

ready once #277 is merged

@supersaiyansubtlety supersaiyansubtlety marked this pull request as ready for review August 30, 2025 22:50
@supersaiyansubtlety
Copy link
Member Author

rebased, ready for review

@ix0rai ix0rai added the cli affects the enigma command-line interface label Sep 1, 2025
Copy link
Member

@ix0rai ix0rai left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

beautiful! i love how this fits into the old structure of command classes, and all the testing is great! just a couple issues with the messages and nitpicks.

@ix0rai ix0rai merged commit acee308 into QuiltMC:develop/2.7 Sep 3, 2025
3 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cli affects the enigma command-line interface enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants