Zulip Chat Archive
Stream: mathlib4
Topic: Suggestions for #port-dashboard
Moritz Firsching (Jan 31 2023 at 22:10):
Eric Wieser said:
Jakob von Raumer said:
Having the PR tags on
mathlib-port-status
would be a cool feature, to quickly see where help is neededPRs to https://github.com/leanprover-community/mathlib-port-status are welcome :).
https://github.com/leanprover-community/mathlib-port-status/pull/2
Yury G. Kudryashov (Jan 31 2023 at 23:07):
Also, it would be nice to ignore default.lean
files on https://leanprover-community.github.io/mathlib-port-status/old
Eric Wieser (Feb 01 2023 at 09:53):
Moritz Firsching said:
Eric Wieser said:
Jakob von Raumer said:
Having the PR tags on
mathlib-port-status
would be a cool feature, to quickly see where help is neededPRs to https://github.com/leanprover-community/mathlib-port-status are welcome :).
https://github.com/leanprover-community/mathlib-port-status/pull/2
This is now live:
Johan Commelin (Feb 01 2023 at 09:54):
Really nice! And very useful!
One minor issue: the yellow labels are really hard to read
Eric Wieser (Feb 01 2023 at 09:55):
Yeah, ideally we'd copy the CSS from github which has a bunch of computation to choose appropriate transparency / text color
Eric Wieser (Feb 01 2023 at 09:55):
PRs remain welcome, but I figured getting ugly labels merged ASAP was better than waiting for pretty labels
Heather Macbeth (Feb 01 2023 at 09:58):
Can we please have it on https://leanprover-community.github.io/mathlib-port-status/old too?
Eric Wieser (Feb 01 2023 at 09:59):
That's a bit harder because the code that generates old
throws away the PR number information
Eric Wieser (Feb 01 2023 at 10:00):
(instead it keeps around some plaintext that sometimes contains mathlib4#...
)
Ruben Van de Velde (Feb 01 2023 at 10:45):
While you're there, do we need the PR number twice for all the in progress files?
Eric Wieser (Feb 01 2023 at 10:49):
That's a bug in https://github.com/leanprover-community/mathlib-tools/blob/master/mathlibtools/file_status.py
Eric Wieser (Feb 01 2023 at 10:49):
It computes comments
incorrectly
Notification Bot (Feb 01 2023 at 10:51):
24 messages were moved here from #mathlib4 > port progress by Eric Wieser.
Eric Wieser (Feb 01 2023 at 11:21):
I added a diagram to explain a little better what's going on at https://github.com/leanprover-community/mathlib-port-status/blob/main/README.md
Eric Wieser (Feb 01 2023 at 11:46):
Ideally we would eliminate run_port_status.sh
and have port_wiki
be an output of mathlib-port-status
Moritz Firsching (Feb 01 2023 at 15:22):
Johan Commelin said:
Really nice! And very useful!
One minor issue: the yellow labels are really hard to read
https://github.com/leanprover-community/mathlib-port-status/pull/5
I tried to do approximately what is done on github regarding the color of the text of the labels...
bwlabels.png
Moritz Firsching (Feb 01 2023 at 15:25):
Heather Macbeth said:
Can we please have it on https://leanprover-community.github.io/mathlib-port-status/old too?
Really seems like this is slighly harder to do. Is there something that can be improved in the new port status change to make it more useful for you?
Heather Macbeth (Feb 02 2023 at 15:54):
@Moritz Firsching Thanks! Yes, I'd like the categorization on "new" port-status to be the same as the categorization on "old" port-status, with the first category to be "ready-to-port" (defined as "all dependencies ported", whether or there is an open PR).
Johan Commelin (Feb 02 2023 at 15:58):
@Heather Macbeth can you explain why?
Johan Commelin (Feb 02 2023 at 15:58):
Currently, I find the top 10 of the top two categories in "new" quite useful
Johan Commelin (Feb 02 2023 at 15:59):
The first one shows the top 10 ports that are in progress, the second one the top 10 that are ready to be ported
Johan Commelin (Feb 02 2023 at 15:59):
(Both are (default) sorted by the number of files that depend on that item, which is the most useful sort in my opinion.)
Ruben Van de Velde (Feb 02 2023 at 16:02):
Should port-status also show counterexamples/archive?
Heather Macbeth (Feb 02 2023 at 16:02):
In my opinion, we want to encourage people to think of the "ready-to-port" (all dependencies ported) files as a unit, and to jump in on the highest priority ones whether there's an open PR that needs extra hands or a file which needs a PR to be started. It's hard to judge the relative importance of two such files when they are not on the same list (I have to read and compare the number of dependencies).
Johan Commelin (Feb 02 2023 at 16:03):
@Ruben Van de Velde I guess we can add those, but it's not high priority. All those files are leaves of the import tree.
Eric Wieser (Feb 02 2023 at 16:03):
Does mathlib3port even include countexamples/archives?
Eric Wieser (Feb 02 2023 at 16:04):
A weak argument for separate tables is that some columns only make sense for things with a PR
Heather Macbeth (Feb 02 2023 at 16:05):
If someone is scanning through a table of "ready-to-port" files, they will still want to be able to see which ones have PRs open and which don't, so the (fairly narrow) columns for PR number and labels convey information even when they're empty.
Jireh Loreaux (Feb 02 2023 at 16:12):
I think I prefer Heather's format if and only if we can separate out files we want to ignore into a separate list (e.g., .default
or other things we decide we're not going to port). This already clutters the "ready to port" list.
Eric Wieser (Feb 02 2023 at 16:13):
Ideally #port-comments would have a boolean not_for_porting
flag
Eric Wieser (Feb 02 2023 at 16:16):
@Johan Commelin, if I make a change to https://github.com/leanprover-community/mathlib4/blob/master/scripts/run_port_status.sh willl your server pick it up automatically?
Johan Commelin (Feb 02 2023 at 16:19):
@Eric Wieser usually
Eric Wieser (Feb 02 2023 at 16:58):
Eric Wieser said:
Ideally #port-comments would have a boolean
not_for_porting
flag
Now done, this contains a should_port: false
Eric Wieser (Feb 03 2023 at 00:45):
Ruben Van de Velde said:
While you're there, do we need the PR number twice for all the in progress files?
Fixed by not using mathlibtools
any more, and instead getting the data from the new more structured yaml file. The readme diagram has been updated to explain the added spaghetti.
Johan Commelin (Feb 03 2023 at 02:42):
@Eric Wieser should the port-graph-bot
(PDFs) and port-progress-bot
(stats) also be added to that diagram?
Johan Commelin (Feb 03 2023 at 02:42):
They need mathlibtools
and hence the old wiki-yaml file...
Eric Wieser (Feb 03 2023 at 02:44):
Yes
Eric Wieser (Feb 03 2023 at 02:45):
But I don't know enough about them to add that
Eric Wieser (Feb 03 2023 at 02:46):
Feel free to push changes to the readme, you can preview the graphvis-ish syntax on the GitHub web editor
Johan Commelin (Feb 03 2023 at 03:00):
@Eric Wieser https://github.com/leanprover-community/mathlib-port-status/pull/8 but it doesn't compile.
Eric Wieser (Feb 03 2023 at 03:02):
I think graph is a reserved word for the node id
Johan Commelin (Feb 03 2023 at 03:03):
So, what does mermaid suggest? That we write garph
or grahp
instead?
Yakov Pechersky (Feb 03 2023 at 03:23):
graf, or in "klass"ic python style, graph_
Eric Wieser (Feb 03 2023 at 09:37):
It's just a node id, it doesn't matter what you write as it doesn't appear in the output
Eric Wieser (Feb 03 2023 at 09:41):
I pushed a fix, but the node text doesn't make any sense at the moment as it assumed that the node id was also rendered
Eric Wieser (Feb 03 2023 at 16:38):
The "possibly out of sync" file list is now sortable by number of out-of-sync mathlib3 PRs, and by size of diff:
Johan Commelin (Feb 03 2023 at 16:42):
Great! Do the "green plus" and "red minus" just mean expand/collapse?
Johan Commelin (Feb 03 2023 at 16:43):
Ok... I was hoping it was some magic prediction about how much effort it was to sync the file :rofl:
Eric Wieser (Feb 03 2023 at 16:45):
It is; the prediction is "oh it's easy" until you see the diff, then its "oh, this is harder"
Johan Commelin (Feb 03 2023 at 16:45):
Thanks for building this tooling!
Eric Wieser (Feb 03 2023 at 16:47):
I think this tooling isn't enough to start working through the list, but it's probably enough to help work out what tooling we really need; but let's have that discussion in this thread.
Eric Wieser (Feb 12 2023 at 12:55):
I've made some tweaks to the dependency graphs now; see port-status#data/complex/basic. Better before
or after? (live at the moment)
Ruben Van de Velde (Feb 12 2023 at 13:04):
What do all the colors mean?
Eric Wieser (Feb 12 2023 at 13:07):
They're just to help you follow the lines
Eric Wieser (Feb 12 2023 at 13:08):
(but also they're just the default behavior in the template I copied)
Eric Wieser (Feb 12 2023 at 13:09):
Maybe I should do that with hover behavior instead
Mario Carneiro (Feb 12 2023 at 13:24):
yeah the colors are misleading
Eric Wieser (Feb 12 2023 at 13:35):
Is there any point showing the ported ancestors on the graph anyway?
Eric Wieser (Feb 12 2023 at 13:37):
Oh, I tricked myself into thinking that #mathlib4 > port progress does it, but it doesn't
Reid Barton (Feb 12 2023 at 13:51):
it used to
Eric Wieser (Feb 12 2023 at 14:35):
Ok, colors removed; now looks like this
Yury G. Kudryashov (Feb 25 2023 at 20:06):
@Eric Wieser https://leanprover-community.github.io/mathlib-port-status/file/order/with_bot shows "last sync" at 995b47e5 but it also shows !4#2406 mathlib 4 commit which changed the mathlib 3 commit to afdb4fa3
Yury G. Kudryashov (Feb 25 2023 at 20:07):
Did I do something wrong in !4#2406?
Eric Wieser (Feb 25 2023 at 20:07):
Last sync refers to the yaml file
Eric Wieser (Feb 25 2023 at 20:07):
Which can be a few minutes behind
Yury G. Kudryashov (Feb 25 2023 at 20:08):
Merged 13h ago
Eric Wieser (Feb 25 2023 at 20:08):
I think the yaml file is having caching problems
Eric Wieser (Feb 25 2023 at 20:09):
@Johan Commelin reported this to me privately a few days ago for something unrelated
Yury G. Kudryashov (Feb 25 2023 at 20:15):
BTW, !4#2498
Eric Wieser (Feb 27 2023 at 13:12):
@Yury G. Kudryashov, that PR forward-ports changes that @Yaël Dillies and I already had forward-port PRs open for
Eric Wieser (Feb 27 2023 at 13:12):
I think reviewing existing forward-ports should take priority over trying to find things that we forgot to forward port
Yury G. Kudryashov (Feb 27 2023 at 14:26):
I'm sorry. These files were not highlighted as "in progress" on https://leanprover-community.github.io/mathlib-port-status/out-of-sync , so I assumed that it's safe to deal with them.
Eric Wieser (Feb 27 2023 at 14:33):
"in progress" means "a PR with an initial port of a file is already out of date even though it's not merged yet"
Eric Wieser (Feb 27 2023 at 14:34):
Evidently I need to use a less confusing label for it
Yury G. Kudryashov (Feb 27 2023 at 15:14):
Can you list PRs that touch the ported file if there are any?
Eric Wieser (Feb 27 2023 at 15:22):
See the discussion in this thread.
Eric Wieser (Feb 28 2023 at 19:21):
Done, thanks @Jon Eugster!
Jireh Loreaux (Mar 15 2023 at 03:50):
@Eric Wieser There's a bug somewhere with the port status page. Right now it lists data.mv_polynomial.{basic, rename, monad}
all with the PR data for monad
only.
Jeremy Tan (Mar 15 2023 at 03:52):
The same happens with linear_algebra.affine_space.affine_equiv
and the two PRs depending on it. The bug's been there for a while
Yury G. Kudryashov (Mar 15 2023 at 05:38):
I guess, it lists a random PR that adds this file.
Eric Wieser (Mar 15 2023 at 08:22):
There is an open issue about this I think. The port yaml file confuses dependent PRs.
Johan Commelin (Mar 15 2023 at 08:24):
You need an algorithm that looks at a PR and decides which file(s) it is adding, and then find a partial inverse to that map.
The current algorithm is certainly not doing a great job at that...
Eric Wieser (Mar 15 2023 at 08:26):
A simple fix might just be to have a one-to-many mapping between files and PRs
Eric Wieser (Mar 15 2023 at 08:26):
Then the algorithm can run in the head of the human reading the page
Jireh Loreaux (Mar 15 2023 at 12:49):
Since PR titles for ported files are generated by the script, why not just use the name in the title? Ultimately if this is just for dependent PRs it's not that important though.
Eric Wieser (Mar 15 2023 at 12:50):
https://github.com/leanprover-community/mathlib4/blob/master/scripts/make_port_status.py is the script that would need to change
Johan Commelin (Mar 15 2023 at 16:24):
Jireh Loreaux said:
Since PR titles for ported files are generated by the script, why not just use the name in the title? Ultimately if this is just for dependent PRs it's not that important though.
The problem is that dependent PRs hijack the entry of the non-dependent PR on the port status dashboard.
Johan Commelin (Mar 15 2023 at 16:24):
I think using PR titles might be more robust. But they are not all formatted in the same way. So it would require a bit of string-fu.
Eric Wieser (Mar 15 2023 at 16:37):
Picking early PR numbers over later PR numbers would probably be enough in 90% of cases
Joël Riou (Mar 21 2023 at 10:05):
Currently the first "unported file" in the port status page appears to be algebra.category.Mon.basic
, but it is ported at !4#2902 It is due to a renaming s/Mon/MonCat/
Jeremy Tan (Mar 21 2023 at 10:07):
Joël Riou said:
Currently the first "unported file" in the port status page appears to be
algebra.category.Mon.basic
Probably have the PR actually merged, and then it'll jump from unported to ported?
Eric Wieser (Mar 21 2023 at 10:19):
Hmm, that is weird; it should definitely show up in the "in progress" section
Eric Wieser (Mar 21 2023 at 10:19):
https://github.com/leanprover-community/mathlib/wiki/mathlib4-port-status says "No", so the fault is not the dashboard but the script generating its data
Eric Wieser (Mar 21 2023 at 10:20):
I think the script is using filename heuristics instead of reading the source header, which is obviously not the right thing to do
Eric Wieser (Mar 21 2023 at 10:25):
https://github.com/leanprover-community/mathlib4/pull/3015 might fix it; mind testing @Johan Commelin?
Johan Commelin (Mar 21 2023 at 11:59):
Running a test...
Johan Commelin (Mar 21 2023 at 12:01):
@Eric Wieser done. Please let me know whether you are happy with the output
Johan Commelin (Mar 21 2023 at 12:18):
looks like it's working
Eric Wieser (Mar 21 2023 at 12:27):
algebra.category.Mon.basic
is still 'no' on the port wiki
Eric Wieser (Mar 21 2023 at 12:28):
I guess the cron job rolled back your test?
Eric Wieser (Mar 21 2023 at 12:28):
(I was in a meeting, sorry)
Johan Commelin (Mar 21 2023 at 12:28):
yes, presumably the cron-job undid my test.
Johan Commelin (Mar 21 2023 at 12:29):
But #port-dashboard looks fine (because it has 30m builds, instead of 5m builds)
Eric Wieser (Mar 21 2023 at 12:29):
Oh, did you change the frequency of the cron job?
Eric Wieser (Mar 21 2023 at 12:30):
I agree it looks fine though; if this was going to fail, the failure mode would have been a totally empty list of "in progress" PRs
Jeremy Tan (Mar 22 2023 at 15:03):
There's a nonexistent file currently showing as unported on the mathlib porting status page, algebra.monoid_algebra.division
Matthew Ballard (Mar 22 2023 at 15:06):
I think you have to wait for mathport to run on that
Eric Wieser (Mar 22 2023 at 15:08):
Yes, I only just created that file. port-status#algebra/monoid_algebra/division
Eric Wieser (Mar 22 2023 at 17:16):
I've now added a comment telling you not to port it yet :)
Jeremy Tan (Mar 22 2023 at 17:23):
Now there's a backlog of awaiting-review PRs, some of which will clear the way for even more files to be ported...
Eric Wieser (Mar 22 2023 at 17:25):
Eric Wieser said:
I've now added a comment telling you not to port it yet :)
It's worth noting that while it appears right at the top of the dashboard, it's not actually blocking anything at all
Eric Wieser (Mar 22 2023 at 17:25):
Because the file that imports it in mathlib3 doesn't import it (yet) in mathlib 4
Matthew Ballard (Mar 22 2023 at 17:26):
Is that file ported/under porting?
Matthew Ballard (Mar 22 2023 at 17:36):
To answer my own question, no I can't read
Eric Wieser (Mar 22 2023 at 17:37):
There are two files that imports it; one is a leaf, and the other is already ported
Matthew Ballard (Mar 22 2023 at 17:38):
I guess I can't read.
Ruben Van de Velde (Apr 20 2023 at 11:36):
I wonder if the graphs could highlight the root nodes as well - right now they can be easily missed in the tangle. For example, matrix.to_lin is one here:
Screenshot-from-2023-04-20-13-35-30.png
(second box under polynomial.quotient on the right)
Eric Wieser (Apr 20 2023 at 11:41):
That's a good idea
Eric Wieser (Apr 20 2023 at 11:42):
port-status#ring_theory/algebraic#graph
Eric Wieser (Apr 20 2023 at 11:42):
On the other hand, its position tells you that we shouldn't worry about it nearly as much as the other nodes :)
Eric Wieser (Apr 20 2023 at 11:43):
@Eric Rodriguez, if you wanted to cleanup the docstrings in to_lin
before porting, I recommend you do so soon!
Ruben Van de Velde (Apr 20 2023 at 11:43):
Too late :)
Last updated: Dec 20 2023 at 11:08 UTC