Skip to content

Commit 7cc7d0a

Browse files
committed
Update Polonius meetings markdown to match Hugo's expectations
The markdown rendering is different between Github and Hugo, this fixes the lists, and some h3/h4 titles.
1 parent a1b6a92 commit 7cc7d0a

File tree

8 files changed

+36
-12
lines changed

8 files changed

+36
-12
lines changed

content/docs/working-groups/polonius/minutes/2019.03.07-meeting.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
---
33

44
Relevant links:
5+
56
- The meeting happened in this [Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/186049-t-compiler.2Fwg-polonius/topic/meeting.202019.2E03.2E07)
67
- A [Paper document](https://paper.dropbox.com/doc/Polonius-Roadmap--AY6C806s~AZK~e7wagmys2_wAg-hk3a9ynduUN2gk1A0NNTF) for the WIP roadmap
78

@@ -16,6 +17,7 @@ We then described a possible follow-up task, focusing on Polonius completeness:
1617
We also spent time talking about next steps in documentation, whether in talks ([Niko]) or written docs ([Rémy]).
1718

1819
Possible talks:
20+
1921
- a walkthrough of a more complex theoretical example.
2022
- a more practical walkthrough with a focus on the concrete parts of the Polonius computation: interfacing with rustc and transferring data, computing the analysis' datalog rules, how datafrog works, etc.
2123

@@ -25,6 +27,7 @@ The final points were more about cross-cutting concerns applicable to all WGs: h
2527

2628
----
2729
The major next steps we decided on were:
30+
2831
- [Matthew] will write mentoring instructions for the [hybrid algorithm task](https://github.com/rust-lang/polonius/issues/100).
2932
- [Niko] and [Albin] will prepare the follow-up walkthrough of Polonius (the specific time, and contents).
3033
- [Niko] will review the [subset relation PR](https://github.com/rust-lang/polonius/pull/99).

content/docs/working-groups/polonius/minutes/2019.04.23-meeting.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,14 @@
22
---
33

44
Relevant links:
5+
56
- The meeting happened in this [Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/186049-t-compiler.2Fwg-polonius/topic/meeting.202019.2E04.2E23)
67
- A [Paper document](https://paper.dropbox.com/doc/Polonius-Roadmap--AY6C806s~AZK~e7wagmys2_wAg-hk3a9ynduUN2gk1A0NNTF) for the WIP roadmap
78

89
---
910

1011
In this meeting, we started with a short review of the previous week's work:
12+
1113
- [Albin] continued work on implementing liveness in Polonius, and finalized [#105](https://github.com/rust-lang/polonius/pull/105), which is now ready to be merged into a new `polonius-engine` release.
1214
- [Niko] wrote up [notes](https://github.com/rust-lang/polonius/issues/104#issuecomment-485011791) describing the second part of the liveness effort: modifying rustc to emit `var_used` and `var_defined` facts for the previous PR. [Albin] has already started working on these rustc steps.
1315
- [Rémy] landed the tiny [#106](https://github.com/rust-lang/polonius/pull/106).
@@ -20,6 +22,7 @@ A useful task was mentioned for the near future: going through the Polonius fail
2022

2123
----
2224
For the following week:
25+
2326
- [Albin] will continue on the liveness fact generation in rustc.
2427
- [Rémy] will continue work on the `Hybrid` variant optimization.
2528
- [@lokalmatador] will familiarize with the steps [Niko] wrote, with available help from the rest of the WG.

content/docs/working-groups/polonius/minutes/2019.04.30-meeting.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,14 @@
22
---
33

44
Relevant links:
5+
56
- The meeting happened in this [Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/186049-t-compiler.2Fwg-polonius/topic/meeting.202019.2E04.2E30).
67
- The [WIP Roadmap](https://paper.dropbox.com/doc/Polonius-Roadmap--AY6C806s~AZK~e7wagmys2_wAg-hk3a9ynduUN2gk1A0NNTF) Paper.
78

89
---
910

1011
In this meeting, we started with a short review of the previous week's work:
12+
1113
- [Albin] continued work on implementing liveness in [Polonius](https://github.com/rust-lang/polonius/pull/105), and opened the [rustc](https://github.com/rust-lang/rust/pull/60266) part of this work: generating the facts needed by the Polonius computation.
1214
- [Niko] wrote up some more [notes](https://github.com/rust-lang/polonius/issues/104#issuecomment-488076424) on continuing the liveness work: the next major part being computing the `region_live_at` facts in Polonius analyses instead of rustc.
1315
- [Rémy] continued the previous week's work of using the results of `LocInsensitive` in `DatafrogOpt` via the `Hybrid` analysis, especially looking for changes in behaviour using polonius and rustc's tests, and ran into the task mentioned the week before: the rustc ui test suite under polonius has more failures than expected.
@@ -16,15 +18,18 @@ In this meeting, we started with a short review of the previous week's work:
1618
Since the liveness work is a bit complex, has many moving parts, and is generally hard to test, we [talked](https://rust-lang.zulipchat.com/#narrow/stream/186049-t-compiler.2Fwg-polonius/topic/meeting.202019.2E04.2E30/near/164566587) about correctness, testing, rustc's test suite and the need to have a reasonable test suite in general. A first step will be to look into rustc's test suite failures, `ignore`ing irrelevant tests or add `bless`ed output, at the very least to track changes and regressions more easily.
1719

1820
The WIP plan about polonius features and rustc integration/subsumption looks clear:
21+
1922
- liveness, which we are actively working on now.
2023
- moves, which should hopefully be smaller, has precedent in the work on Lark, and could be partially/possibly applicable to rustc.
2124
- regions and region logic, for which we have started working on the easier parts, but also crosses paths with the [traits WG and chalk effort](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/meeting.202019.2E04.2E29/near/164478317) for the more complex ones.
2225

2326
Useful future tasks we mentioned:
27+
2428
- after the inaugural talk, it'd be useful to continue the "explaining Polonius" series of videos/talks, focusing on the analysis rules and examples to learn, or remember, why they are the way they are.
2529

2630
----
2731
For the following week:
32+
2833
- [Albin] will continue on liveness.
2934
- [Rémy] will look at the rustc tests in more detail.
3035
- [Niko] will prepare the next steps in the liveness, to stay ahead of [Albin]'s progress.

content/docs/working-groups/polonius/minutes/2019.05.07-meeting.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,23 +2,27 @@
22
---
33

44
Relevant links:
5+
56
- The meeting happened in this [Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/186049-t-compiler.2Fwg-polonius/topic/meeting.202019.2E05.2E07).
67
- The [WIP Roadmap](https://paper.dropbox.com/doc/Polonius-Roadmap--AY6C806s~AZK~e7wagmys2_wAg-hk3a9ynduUN2gk1A0NNTF) Paper.
78

89
---
910

1011
In this shorter meeting, we spent most of the time on the previous week's work:
12+
1113
- [Niko] has written more [notes](https://github.com/rust-lang/polonius/issues/104#issuecomment-489681898) and [steps](https://github.com/rust-lang/polonius/issues/104#issuecomment-489691804) for implementing liveness. With these, most of liveness is described (modulo the specifics of `drop`) :tada:.
1214
- [Albin] smoothly continued work on computing liveness in Polonius in [#105](https://github.com/rust-lang/polonius/pull/105), and rustc's [#60266](https://github.com/rust-lang/rust/pull/60266): finishing up last week's steps about the beginning of fact generation, and preparing to emit the ones needed to compute the `region_live_at` relation.
1315
- [Rémy] started looking at rustc's test suite behaviour under `--compare-mode polonius` in more detail. While initially the number of failures looked [big](https://github.com/rust-lang/rust/compare/master...lqd:polonius_tests), [Matthew] mentioned their in-review PR [#60171](https://github.com/rust-lang/rust/pull/60171), which would contain most of the differences seen in these initial runs, as it unifies the NLL mode under which both of these test modes are ran.
1416
- [@lokalmatador] successfully got rustc building and prepared for profiling.
1517

1618
Useful future tasks we mentioned:
19+
1720
- even though we always think about the topic, we noticed analyzing the test suite, tests and correctness, are tasks which should actually be mentioned in the Roadmap.
1821
- the polonius compare-mode likely has little or no documentation, fixing that would be important as part of the general documentation effort needed by the project.
1922

2023
----
2124
For the following week:
25+
2226
- [Albin] will continue on liveness.
2327
- To get ahead of the liveness game, [Niko] will look at and describe more of the `drop` specifics.
2428
- [Rémy] will continue on the rustc test suite results, especially on top of [#60171](https://github.com/rust-lang/rust/pull/60171). But also write the previous meetings' notes they forgot to do (but as you can attest, dear reader/reviewer, got done eventually).

content/docs/working-groups/polonius/minutes/2019.05.14-meeting.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,26 +2,31 @@
22
---
33

44
Relevant links:
5+
56
- The meeting happened in this [Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/186049-t-compiler.2Fwg-polonius/topic/meeting.202019.2E05.2E14).
67
- The [WIP Roadmap](https://paper.dropbox.com/doc/Polonius-Roadmap--AY6C806s~AZK~e7wagmys2_wAg-hk3a9ynduUN2gk1A0NNTF) Paper.
78

89
---
910

1011
A recap of last week's work:
12+
1113
- [Niko] and [Albin] went through a lot of details of liveness, in the dedicated Zulip thread ([around this point](https://rust-lang.zulipchat.com/#narrow/stream/186049-t-compiler.2Fwg-polonius/topic/liveness.20polonius.23104/near/165238306)).
1214
- With the previous week's steps, and these conversations, [Albin] has continued the work on liveness, and is now _basically done_ :tada:. With the 2 PRs, Polonius is able to compute the same `region_live_at` facts as rustc. The remaining work being mostly clean-up, various minor fixes, more testing, and finally, reviews. The remaining tasks are listed in [this comment](https://github.com/rust-lang/polonius/issues/104#issuecomment-492380520).
1315
- [Rémy] has continued looking at the rustc test suite under Polonius. As expected, over [#60171](https://github.com/rust-lang/rust/pull/60171), there are less than 20 failures. A first pass at analyzing the results is available [here](https://hackmd.io/CjYB0fs4Q9CweyeTdKWyEg) with links to the necessary information (test source, NLL/polonius outputs, diff) to categorize the failures but the TL;DR is: some of them are trivially fixable (being artifacts of test construction, and identical under NLLs and Polonius), some are duplicates or similar to of other failures, a lot are simply different diagnostics, and a handful need more in-depth investigation to understand the difference in behaviour, if it's a bug, and so on. More information will generally be available in [the dedicated thread](https://rust-lang.zulipchat.com/#narrow/stream/186049-t-compiler.2Fwg-polonius/topic/rustc.20compare-mode.20polonius).
1416
- [@lokalmatador] is working through profiling tasks and may soon be able to gather benchmark data.
1517
- On the more administrative side of things, [Rémy] wrote up the meeting notes from the previous weeks, updated the roadmap to [add testing and validation](https://paper.dropbox.com/doc/Polonius-Roadmap--AdKXqkTdIxkM3zh3xZmuZ4RmAg-hk3a9ynduUN2gk1A0NNTF#:uid=569313235802426695258068&h2=Extending-Polonius-to-cover-th), as we mentioned during last week's meeting.
1618

1719
Useful information:
20+
1821
- various members will be absent at different points in the upcoming weeks. There may not necessarily be a meeting sometimes (TBD), but async updates will be available on Zulip in any case.
1922

2023
Useful future tasks we mentioned:
24+
2125
- with the liveness work about to land, we mentioned some important optimizations rustc has about liveness (in particular, trying to _avoid_ computing it unless it is necessary), and that Polonius (or its inputs) will surely need as well. This topic was discussed at [this point in the meeting thread](https://rust-lang.zulipchat.com/#narrow/stream/186049-t-compiler.2Fwg-polonius/topic/meeting.202019.2E05.2E14/near/165653374).
2226

2327
----
2428
For the following week:
29+
2530
- [Albin] will tackle the remaining final liveness.
2631
- [Rémy] will continue on the rustc test suite results (fix the trivial differences, etc) and time permitting, help with the final liveness tasks.
2732
- [@lokalmatador] will continue their benchmarking endeavour.

content/docs/working-groups/polonius/minutes/2019.05.28-meeting.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,15 @@
22
---
33

44
Relevant links:
5+
56
- The meeting happened in this [Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/186049-t-compiler.2Fwg-polonius/topic/meeting.202019.2E05.2E28).
67
- The [WIP Roadmap](https://paper.dropbox.com/doc/Polonius-Roadmap--AY6C806s~AZK~e7wagmys2_wAg-hk3a9ynduUN2gk1A0NNTF) Paper.
78

89
---
910

1011
This week, we discussed the following topics:
1112

12-
#### 1. Profiling and fact generation
13+
### 1. Profiling and fact generation
1314

1415
[@lokalmatador] has made some progress on the profiling tasks: WIP branch is [here](https://github.com/rust-lang/rust/compare/master...lokalmatador:polonius_profiling) gathering timing data for parts of NLLs and Polonius using rustc's `-Z self-profile` API.
1516

@@ -22,7 +23,7 @@ It was also deemed "nice to have" but not high priority compared to the rest of
2223

2324
A bug in `measureme`'s `summarize` tool seemed to be blocking progress, but was later found to be a problem in data gathering, and which has since been fixed. Complete discussion available in the dedicated Zulip thread around [this point](https://rust-lang.zulipchat.com/#narrow/stream/186049-t-compiler.2Fwg-polonius/topic/profiling/near/166400364).
2425

25-
#### 2. Liveness
26+
### 2. Liveness
2627

2728
[Albin] has been putting the finishing touches on the liveness work, which is ready to review and land.
2829

@@ -34,7 +35,7 @@ Most of the tasks mentioned in a previous meeting, and this [summary github comm
3435

3536
A summary of the liveness work is "it works but does not produce exactly the same `region_live_at` facts as rustc does today" (and this is also one of the last tasks in the list). This is because rustc also takes initialization into account, while the Polonius liveness work does not do so yet. This is indeed the next step in Polonius' roadmap, and a nice segue into the last topic discussed in this meeting.
3637

37-
#### 3. Move/overwrite analysis
38+
### 3. Move/overwrite analysis
3839

3940
As this is the next item to tackle, [Niko] and [Albin] will schedule a recorded video chat session next week, about how the current borrow checker tracks moves and initialization, and how to move this over to Polonius.
4041

content/docs/working-groups/polonius/minutes/2019.06.04-meeting.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,15 @@
22
---
33

44
Relevant links:
5+
56
- The meeting happened in this [Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/186049-t-compiler.2Fwg-polonius/topic/meeting.202019.2E06.2E04).
67
- The [WIP Roadmap](https://paper.dropbox.com/doc/Polonius-Roadmap--AY6C806s~AZK~e7wagmys2_wAg-hk3a9ynduUN2gk1A0NNTF) Paper.
78

89
---
910

1011
This week, we discussed the following topics:
1112

12-
#### 1. Liveness
13+
### 1. Liveness
1314

1415
To help with reviewing [polonius#105](https://github.com/rust-lang/polonius/pull/105), some last minutes changes were discussed:
1516
- the older facts recorded in the Polonius dataset (the `inputs` directory) needed regenerating. This creates a huge diff for review, so separating those out to be "rubberstamped" would be interesting.
@@ -18,17 +19,17 @@ To help with reviewing [polonius#105](https://github.com/rust-lang/polonius/pull
1819
In general, we'll still need to check rustc's testsuite when the liveness work is merged. That ties into the other ongoing work about checking our current `-Z polonius` behaviour in those tests (especially now that [#60171](https://github.com/rust-lang/rust/pull/60171) has been merged).
1920

2021

21-
#### 2. Profiling and performance
22+
### 2. Profiling and performance
2223

2324
With the previous problems related to `measureme`/`summarize` fixed, [@lokalmatador] has continued work on profiling, and has been gathering early results.
2425

25-
#### 3. Move/initialization analysis
26+
### 3. Move/initialization analysis
2627

2728
[Niko] and [Albin] have [recorded a call](https://www.youtube.com/watch?v=ilv9V-328HI) discussing how rustc ensures all data used is initialized, and how to integrate these checks in Polonius.
2829

2930
Note: the screen recording is "paused" for a bit at the beginning (until around minute 14), as notes were broadcast on the Paper website, but [this](https://paper.dropbox.com/doc/Polonius-and-initialization-mNvR4jqITCdsJDUMEhFbv) is the document they discuss and take notes in.
3031

31-
#### 4. Proposal: stop tracking subset relations along the CFG
32+
### 4. Proposal: stop tracking subset relations along the CFG
3233

3334
[Niko] and [Aaron Weiss] (who works on the [Oxide formal model](https://aaronweiss.us/pubs/draft19-oxide.pdf) of Rust's ownership and borrowing) came up with a proposal to avoid tracking `subset` relations.
3435

@@ -39,6 +40,7 @@ There are more details at the beginning of the dedicated Zulip thread — [aroun
3940
---
4041

4142
This week, the plan is:
43+
4244
- [@lokalmatador] will continue gathering profiling data.
4345
- [Niko] will review and land the liveness PR, and release the new polonius version to crates.io.
4446
- [Albin] will update the [rustc liveness PR](https://github.com/rust-lang/rust/pull/60266) after that, and mark it from "WIP" to "ready to review". They also will do a public presentation about Polonius next week and will prepare for that.

content/docs/working-groups/polonius/minutes/2019.06.11-meeting.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,15 @@
22
---
33

44
Relevant links:
5+
56
- The meeting happened in this [Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/186049-t-compiler.2Fwg-polonius/topic/meeting.202019.2E06.2E11).
67
- The [WIP Roadmap](https://paper.dropbox.com/doc/Polonius-Roadmap--AY6C806s~AZK~e7wagmys2_wAg-hk3a9ynduUN2gk1A0NNTF) Paper.
78

89
---
910

1011
This week, we worked on — and discussed — the following topics:
1112

12-
#### 1. Proposal: stop tracking subset relations along the CFG
13+
### 1. Proposal: stop tracking subset relations along the CFG
1314

1415
[Niko] wrote up an issue with more details about the proposal: [issue #107](https://github.com/rust-lang/polonius/issues/107). We also discussed it more in the dedicated zulip thread, around [this point](https://rust-lang.zulipchat.com/#narrow/stream/186049-t-compiler.2Fwg-polonius/topic/subset.20relations.20and.20polonius/near/167407904).
1516

@@ -21,27 +22,27 @@ Some more exploratory work is planned around these refinements, and also around
2122

2223
To prepare for the call on this topic, [Rémy] tried implementing a quick [prototype and examples](https://github.com/rust-lang/polonius/compare/master...lqd:variant_prototype). As of this writing, it seems to work on the simpler example datasets from the Polonius repository, but not on the more realisic use-case (`clap`) so more bugfixing will be needed. [Rémy] also wrote a [short report](https://hackmd.io/EqECXcd7TIGj97lVNc4dhw?view) about those quick explorations.
2324

24-
#### 2. Call about `subset` relations, the proposal, Oxide
25+
### 2. Call about `subset` relations, the proposal, Oxide
2526

2627
We had a [recorded video call](https://www.youtube.com/watch?v=mAUGvNgZYtw) about the specifics of the `subset` relation, its role and why it was propagated along the CFG. We then talked in more detail about the proposal refinement(s), and finished with a comparison between the Polonius model and the Oxide model.
2728

2829
To follow along the video: the paper document we used to record notes and examples can be [found here](https://paper.dropbox.com/doc/Polonius-and-subset-propagation--AemU19yUmQ461DupzxgaCj2NAg-2uMIPkQSbqpPjqrJ9L9DM).
2930

3031
Huge thanks to everyone involved, it was super interesting and fun!
3132

32-
#### 3. Profiling and performance
33+
### 3. Profiling and performance
3334

3435
[@lokalmatador] has been successfully gathering early results :tada: (for example, [this profiling data](https://rust-lang.zulipchat.com/user_uploads/4715/C7fHB1wgXXWWxNrd1N8sbRy1/measurements.zip) comes from some of examples in the Polonius repository). The next steps will then be to collect some data from the official rustc benchmarking suite.
3536

36-
#### 4. Rustc test failures under Polonius
37+
### 4. Rustc test failures under Polonius
3738

3839
[Rémy] has (slowly) continued work on analyzing the `ui` test suite failures under Polonius. Now that [Matthew]'s [PR #60171](https://github.com/rust-lang/rust/pull/60171) has landed: the WIP branch was rebased into a more stable state.
3940

4041
New failures were unfortunately found, but most of the simpler differences were "taken care of". The analysis will need to be double-checked, and the WIP report is [here](https://hackmd.io/CjYB0fs4Q9CweyeTdKWyEg?view).
4142

4243
There are still a couple of simple cases left (differences in diagnostics only, for example) before looking at the remaining more complicated cases, but those seem to be actual "regressions" somewhere (probably divergences between the Polonius facts, NLL constraints, and assumptions about MIR).
4344

44-
#### 5. Liveness
45+
### 5. Liveness
4546

4647
:tada: [polonius#105](https://github.com/rust-lang/polonius/pull/105) has landed :tada:
4748

0 commit comments

Comments
 (0)