-
Notifications
You must be signed in to change notification settings - Fork 233
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
Modify CLI interface #123
Modify CLI interface #123
Conversation
Add csv file to generated outputs
Output of help file:
|
Cool! |
It is a limitation of
I don't love this, but it is your call. |
What I'm not comfortable with, is the current state of things. You raise a point I've had in the back of my mind for a while, so I'm very thankful for this proposal. I have a proposal: @aakatz can submit a pull request for the improved CSV/TSV output to @slightlynybbled, who is welcome to refactor If both contributors agree with this, I will close #116 without merging, in favor of including its commits as part of #123 (this) |
Nope, let's stick to your proposal then. |
I'm ok with this. It jives nicely with separation of concerns, which I hold dear. |
The way I see it, we would need a couple of functions:
and some simpler functions:
and a placeholder:
|
I made some pretty major changes:
I'm sure that there is still some cleanup to perform and it would be prudent to test |
I won't be able to take a closer look today, but that all sounds very good. Just be careful with |
I recommend rebasing this branch onto the current
It seems several of your refactoring changes of |
@aakatz3 wrote:
One way to handle this combination of specifications, is to let the config file (if present) be the first of potentially several --prepend'ed YAML files. Then, later spesifications and finally any CLI options can override. |
#118 has been merged into Before merging, I'd appreciate if you could compress the commit history a bit by squashing and thus removing intermediate commits, to keep the history clean. Otherwise, I would have to resort to squashing all PR commits into one, which isn't the best idea for a larger refactoring such as this one. Thanks! |
# Conflicts: # src/wireviz/build_examples.py # src/wireviz/wv_helper.py
I messed with this for longer than I care to admit... I don't know how to squash. I think that some things are broken... could use an assist. |
If you can describe in more detail, what you think is broken, I might have a look to assist you. See also my description below on how you can rebase to squash commits together, and to untangle your branch history. Do you normally use use command line Personally, I normally use command line
|
That is some fantastic advice right there. Thank you @kvid. |
Any progress on the commit restructuring? I'm afraid it's not possible for me or @kvid to check out the PR and do the squashing, without removing @slightlynybbled's authorship, which would be a shame. But maybe there is some way to help out that I'm not aware of? |
Since there has not been any progress on this front, I will move this topic to the v0.3 milestone, since I want to get v0.2 released soon. This shouldn't be a huge deal-breaker, and it's no problem to release v0.3 soon if something happens here shortly after release. |
@slightlynybbled , I hope you're well and I'm wondering whether you are able to keep working on getting this PR ready for a merge? |
I'm going to close the pull request and do a fresh try later. Too much has happened and I don't think that the PR in its current form is easily salvageable. |
See issue #60
From an interface standpoint, I mostly followed the recommendations of @formatc1702.
There are minor differences put in place for convenience and compatibility with
click
.Windows example:
Linux example:
The proposed pull request also assumes some architectural changes within the package that the author may not be comfortable with. It is my opinion that the
Harness
object should be highly concerned with generating the correct outputs and less concerned with file output manipulations, which explains the structure that I chose. I simply chose to write the outputs fromparse()
at the highest level. I'm assuming that expanding theHarness()
object to support formats as properties is the most straightforward way of expanding the package and that the idea of theHarness()
object actually writing to files itself will become awkward as time goes on. The idea currently implemented as propertiessvg
andpng
could easily be expanded to create other propertiescsv
,html
, etc and allow higher-level code to do the coordination and file io with returned data.There are still some rocks in here, and I don't expect the PR to be accepted in its current form, but I do believe that it is easier to maintain and expand with this as the starting at this point.