-
-
Notifications
You must be signed in to change notification settings - Fork 7
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
Update to clap 4 + rework to declarative style #32
base: main
Are you sure you want to change the base?
Conversation
Hey, thanks again for getting another MR done, it's really appreciated :). I think this declarative style probably will have some benefits in terms of grouping data together, I'm definitely not close to rejecting this change. I'm doing some stuff at church today though so I won't be available until later this afternoon, but I'll get this checked out later today when I get some time. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I still need to run your code locally to verify everything, but most of your changes look great! Just had a few things I needed changed and had questions about, and it should be good to go after that.
…filter for 'search' and 'list'
You're correct on all your comments, thanks! Fixed. Also, while refactoring I may have gone a bit overboard:
As per usual - feel free to comment on what should be reverted or reworked. |
@hwittenborn - i can rebase to fresh master to get rid of conflicts, if this PR is still releveant? |
Yeah, I still want to get this merged @tonky. I implemented this derive style in some code for makedeb, and it's definitely a lot cleaner than the builder method. Feel free to rebase it, let me know if you need any help if any conflicts arise too, I'll be around :) |
And here's something no-one asked for but i was interested in: Clap 4!
Saw recent
clap
release, also never had a chance to try it, so i decided to give it a go.I think declarative style is easier to read(and args parsing is more explicit). Also i took some liberties with
search
andlist
args for filtering, turning them intodiscriminated union
(since they are mutually exclusive).This changes the interface a bit, but i though about it as a suggestion - i'll change it back to the way it works now, if you think it's not worth it.
As for the rest of the changes - same story, feel free to reject it if you don't need or like it, it was mostly done as a personal excercise :)