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

WIP, ENH: rich-click CLI #809

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

tylerjereddy
Copy link
Collaborator

image

  • switch to darshan_summary as a console script that doesn't require prefixing with python -m ..; so new incantation looks like darshan_summary --log_path treddy_runtime_heatmap_inactive_ranks.darshan and reports the processing time in seconds automatically

  • there were two motivations for the above change: 1) simplify the command the user needs to remember 2) I almost always want to know how long the processing took, so report that time by default

  • this is just a skeleton, and doesn't actually hook in the HEATMAP options to actual changes in the report (yet); one other caveat is that the console script is less friendly for developers that use an "editable install" so you need to use pip install . instead of pip install -e ., which is a bit annoying, but probably lower priority than user experience concerns/improvements

  • some TODOs may include:

  • remove the old argparse CLI interface and hook the new click-based CLI interface into the testsuite somehow
  • actually implement the heatmap option effects (though this can probably be handled separately, other PRs dealing with that stuff already..)
  • discuss the initial set of options we want and how we want to group them into sections
  • decide if the extra dependencies are worth it for the CLI improvements (probably?); if so,
    hook in the new deps where needed
  • Add a little bit of basic text about the summary report before the option blocks

@tylerjereddy tylerjereddy added enhancement New feature or request pydarshan labels Sep 13, 2022
* related to darshan-hpcgh-808

* adopt [`rich-click`](https://github.com/ewels/rich-click) for the
pydarshan summary report CLI, with basic usage and heatmap option
blocks

* switch to `darshan_summary` as a console script that doesn't
require prefixing with `python -m ..`; so new incantation looks
like `darshan_summary --log_path treddy_runtime_heatmap_inactive_ranks.darshan`
and reports the processing time in seconds automatically

* there were two motivations for the above change:
1) simplify the command the user needs to remember
2) I almost always want to know how long the processing took,
so report that time by default

* this is just a skeleton, and doesn't actually hook in the
HEATMAP options to actual changes in the report (yet); one other
caveat is that the console script is less friendly for developers
that use an "editable install" so you need to use `pip install .`
instead of `pip install -e .`, which is a bit annoying, but probably
lower priority than user experience concerns/improvements

* some TODOs may include:

- [ ] remove the old `argparse` CLI interface and hook the new
`click`-based CLI interface into the testsuite somehow
- [ ] actually implement the heatmap option effects (though
this can probably be handled separately, other PRs dealing with
that stuff already..)
- [ ] discuss the initial set of options we want and how we want
to group them into sections
- [ ] decide if the extra dependencies are worth it for the
CLI improvements (probably?)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request pydarshan
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant