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

Heuristic to auto-hide stdlib if too many #80

Open
tfiers opened this issue Jan 15, 2023 · 3 comments
Open

Heuristic to auto-hide stdlib if too many #80

tfiers opened this issue Jan 15, 2023 · 3 comments
Labels
feature An enhancement to src/ visible to end-users
Milestone

Comments

@tfiers
Copy link
Owner

tfiers commented Jan 15, 2023

stdlib is then not true/false, but rather: {:auto (default), :fade, :hide, :normal}

From

:auto chooses between :fade and :hide.
Based on some heuristic that avoids the eldritch Plots.jl horror of here:

(we could keep false as an option, for backwards compat; and for consistency with jll, for which we provide no fade nor auto-hide)

@tfiers tfiers added the feature An enhancement to src/ visible to end-users label Jan 15, 2023
@tfiers tfiers added this to the v1 milestone Jan 15, 2023
@tfiers
Copy link
Owner Author

tfiers commented Jan 16, 2023

No, we should give jll's the same treatment:

Also, this def should go into the

"134 dependencies, of which 33 JLL packages and 28 stdlib packages were filtered out"

@tfiers
Copy link
Owner Author

tfiers commented Jan 16, 2023

Heuristic can just be a fixed number threshold :) Plots has about 66 (non stdlib) jll deps, eg. So cutoff could eg be 20.

@tfiers
Copy link
Owner Author

tfiers commented Jan 16, 2023

Btw, from

Whether and how many stdlib & jll packages hidden
No need to say "to unhide, pass ..": can say that in REPL :)
Btw, to give these numbers -- and to make the heuristic decision! -- we do need to crawl for them! (I.e. can't early stop in tree search in depgraph)

So there's diff between filtering them out post hoc, or not even crawling (expanding them)

So, the :hide option should split (or should stay, but mean sth more specific and there should be a new sibling option)

{:ignore, :hide, :fade, :normal, :auto (default)}

"
:auto chooses between the latter three:

  • :normal if pkg is itself in the standard library
  • :hide if not, and if there are more than hidethreshold() stdlib packages in the graph
  • :fade otherwise.

I.e. we do show stdlib dependencies (but faded), if there aren't too many to clutter the graph.
"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature An enhancement to src/ visible to end-users
Projects
None yet
Development

No branches or pull requests

1 participant