-
-
Notifications
You must be signed in to change notification settings - Fork 146
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 ComrakExtensionOptions
non-exhaustive
#305
Make ComrakExtensionOptions
non-exhaustive
#305
Conversation
I am not a maintainer (no connection to the project) but would you maybe consider adding it to all the config structs?
If there is to be a one-time breaking change for exhaustiveness, may as well apply it to everything that might want to add options in the future |
I agree. I'll rebase this shortly and add those before I merge. |
aaaa634
to
4ddd159
Compare
I've decided to leave the top-level |
@kivikakk are you fine with me adding builders for the non-exhaustive options to make them less verbose to construct? |
Oh I somehow missed that 😅 Thanks for the great library btw! |
Agreed, we apprecaite it! |
Thanks both, that means a lot! The contributors list is getting longer — thanks for all your help. 😊 |
🤔 does this change require an update to the README? |
What part do you think would need a change? I don't see any code examples that use options or plugins aside from passing |
Ah you’re right. I was thinking the calling interface was changing. |
Resolves #303
Note: This is a breaking change, so it will require a breaking semver bump on next release
I would also be willing to add builders for constructing all parts of
ComrakOptions
which is a bit more ergonomic to construct things with. All intermediate states of constructingComrakOptions
are valid, so they can just be implemented with setters on the structs instead of requiring a separate type