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

Unify the error types in the nutype package #75

Open
gensmusic opened this issue Jul 26, 2023 · 1 comment
Open

Unify the error types in the nutype package #75

gensmusic opened this issue Jul 26, 2023 · 1 comment

Comments

@gensmusic
Copy link

Hi,

I'm writing to you today to suggest that you consider unifying the error types for each struct in the nutype package. Currently, each struct has its own enum error type, which can make it difficult to track and handle errors.

I propose that we unify the error types into a single error type called ValidateError. This would make it easier to track and handle errors, as we would only need to handle a single error type instead of multiple error types.

I believe that this change would be a valuable improvement to the nutype package. Thank you for your time and consideration.

@greyblake
Copy link
Owner

@gensmusic Hi! Thanks for raising this.
You're not the first one who is raising this issue (another one was #43).

The primary motivation for having dedicated error types is to force users:

  • To handle the error cases which are relevant and may happen
  • Not to worry about error variants which are not relevant

But since there is a demand for a generic/common error type, I consider to implement some easy-to-use conversions into that common error type from specific error type.

I will keep this issue open, so I keep this in mind.
If you have any other questions/suggestions please let me know! I am very curious to hear from users and their use cases.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants