Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make exceptions suitable for direct usage in end user applications #3

Open
JohnnyJayJay opened this issue Apr 3, 2020 · 0 comments
Labels
enhancement New feature or request

Comments

@JohnnyJayJay
Copy link
Member

Is your feature request related to a problem? Please describe.
Exceptions in mela-command are fairly rudimentary right now and not much more than just subclasses of RuntimeException with little to no additional properties. Furthermore, some of the default exception messages reference code and can't really be used to help end users.

Describe the solution you'd like
Exceptions should contain additional information of all kinds, including, but not limited to

  • detailed exception messages made to be understood by end users without reference to the code
  • possible fixes/suggestions as a String
  • more details for exceptions related to arguments (as requested in Provide more information in exceptions #2 )
  • methods to format exceptions in a readable way
  • eventual support for localisation

Describe alternatives you've considered
The alternative to this would be to go in the opposite direction and discourage the use of exceptions to indicate issues to end users. This would require more boilerplate and would probably go against this project's principles, though.

Additional context
/

@JohnnyJayJay JohnnyJayJay added the enhancement New feature or request label Apr 3, 2020
JohnnyJayJay added a commit that referenced this issue Apr 3, 2020
JohnnyJayJay added a commit that referenced this issue Apr 4, 2020
… and usage, add ArgumentMappingException subclass (ref #2 #3)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant