|
| 1 | ++++ |
| 2 | +path = "inside-rust/9999/12/31/program-management-update-2025-07" |
| 3 | +title = "Program management update — July 2025" |
| 4 | +authors = ["Tomas Sedovic"] |
| 5 | + |
| 6 | +[extra] |
| 7 | +team = "Edition & Goals teams" |
| 8 | +team_url = "https://www.rust-lang.org/governance/teams/" |
| 9 | ++++ |
| 10 | + |
| 11 | +Welcome to the second Rust PM update! |
| 12 | + |
| 13 | +Things were a bit busy in the personal life. We had to temporarily move to a smaller apartment which was quite time-consuming and energy-draining. And after that, I took a week off and we spent it in the mountains. |
| 14 | + |
| 15 | +So things were a bit slower in July. In addition to meetings, what clearly dominated was the Project Goals work. |
| 16 | + |
| 17 | +## Wrapping up 2025 H1 goals |
| 18 | + |
| 19 | +As we entered the second half of the year, it was time to wrap up the current Project Goals and get the new ones going. In the spirit of helping people focus on other things, I took this over. |
| 20 | + |
| 21 | +First, I've sent a couple requests for goal updates. This lead me to noticing and fixing an issue with the triagebot. See [the `ping-goals` section](#ping-goals-retry-issue). |
| 22 | + |
| 23 | +After people provided their final messages, I've published the final 2025H1 Project Goals update: |
| 24 | + |
| 25 | +https://example.com/july-project-goals-update/ |
| 26 | + |
| 27 | +(**TODO** write and publish the July final goal update) |
| 28 | + |
| 29 | +With that done, I've closed most of the tracking issues. Some goals are being renewed for the H2 period so we're keeping those open. |
| 30 | + |
| 31 | +(**TODO**: again, make sure we've actually closed the issues before publishing the blog.) |
| 32 | + |
| 33 | +## Starting 2025 H2 goals |
| 34 | + |
| 35 | +With all of that out of the way, Niko published the [call for 2025 H2 goal proposals][2025H2CFP]. |
| 36 | + |
| 37 | +[2025H2CFP]: /inside-rust/2025/06/23/project-goals-2025h2-call-for-submissions/ |
| 38 | + |
| 39 | +Based on the feedback we've received, we've made some changes: |
| 40 | + |
| 41 | +* We're getting the proposals in front of the Teams and their leads earlier (well before the final RFC is written) so they are aware and have input into what's being proposed. |
| 42 | +* We're asking them to suggest what they'd like to see as a flagship goal before the final selection is made. |
| 43 | +* For each proposed goal, we've asked each team with asks mentioned in the goal to select a "champion" who commits to making sure the goal is not blocked by that team. |
| 44 | + |
| 45 | +Once all the champions are selected, we'll meet with the team leads, go over the goals and figure out which ones we want to accept. |
| 46 | + |
| 47 | +Similarly, we'll take their input regarding flagship goals. |
| 48 | + |
| 49 | + |
| 50 | +As the goals were being proposed, Niko, Rémy and I looked at the PRs, fixed any CI issues and merged them. |
| 51 | + |
| 52 | +For each team, I've opened a call for champions Zulip thread listing goals that requested their support. [Here's an example for the Lang team](https://rust-lang.zulipchat.com/#narrow/channel/213817-t-lang/topic/2025H2.20Goal.20Review). |
| 53 | + |
| 54 | +As with any new process, people had questions. I was there to help clarify we're asking for, the overall plan and next steps. When there were specific questions for a goal, I made sure to connect the right people. |
| 55 | + |
| 56 | +### Rust for Linux |
| 57 | + |
| 58 | +Continuing the Rust for Linux effort, I'll be the point of contact for the two goals they're proposed ([compiler][rfl-compiler] and [language][rfl-lang] features for getting Rust for Linux into stable Rust). |
| 59 | + |
| 60 | +[rfl-compiler]: https://rust-lang.github.io/rust-project-goals/2025h2/Rust-for-Linux-compiler.html |
| 61 | +[rfl-lang]: https://rust-lang.github.io/rust-project-goals/2025h2/Rust-for-Linux-language.html |
| 62 | + |
| 63 | +I will set up the agenda, run the meetings and keep the tracking issues up-to-date. |
| 64 | + |
| 65 | +## Misc |
| 66 | + |
| 67 | +### `ping-goals` retry issue |
| 68 | + |
| 69 | +The request for updates is done by the `ping-goals` command of the @triagebot. This returned an error ("Failed to await at this time: connection closed before message completed"), but did actually ping everyone. |
| 70 | + |
| 71 | +Multiple time, in fact: |
| 72 | + |
| 73 | +https://rust-lang.zulipchat.com/#narrow/channel/435869-project-goals/topic/Prepare.20const.20traits.20for.20stabilization.20.28goals.23106.29 |
| 74 | + |
| 75 | +As you can see in the thread, this wasn't a new behavior either. Precisely the sort of thing I can and should look for improving: |
| 76 | + |
| 77 | +https://github.com/rust-lang/triagebot/issues/2108 |
| 78 | + |
| 79 | +Urgau https://github.com/Urgau looked into it and found out this is because rustbot was sending the pings one-by-one and taking some time to finish. |
| 80 | + |
| 81 | +Zulip interpreted this as a timeout and retried the requests a few times. |
| 82 | + |
| 83 | +Here's the fix he opened: https://github.com/rust-lang/triagebot/pull/2109. |
| 84 | + |
| 85 | +Thank you Urgau! |
| 86 | + |
| 87 | +### Leadership Council Minutes |
| 88 | + |
| 89 | +Having taken over the minutes for the Leadership Council meetings in June, I've now closed the loop by cleaning them up and publishing them in [the leadership-council repository][leadership-council-minutes]. |
| 90 | + |
| 91 | +[leadership-council-minutes]: https://github.com/rust-lang/leadership-council/tree/main/minutes/sync-meeting |
| 92 | + |
| 93 | +### Meeting Minutes Upload |
| 94 | + |
| 95 | +uploaded all the other project meeting notes I took (where relevant) TODO |
| 96 | + |
| 97 | + |
| 98 | +## Stats |
| 99 | + |
| 100 | +meetings attended: |
| 101 | + |
| 102 | +word count for minutes |
| 103 | + |
| 104 | +note the dubiousness of these stats and that they're not a target metric. |
| 105 | + |
| 106 | +NOTE: count total minuted words. (note: includes people names but I did type those too): |
| 107 | + |
| 108 | + $ grep --no-filename '^\w\+: ' -r . | wc --words - |
| 109 | +77269 |
| 110 | + |
| 111 | +WHOA: that's almost the length of a novel! (what am I doing with my life‽) |
| 112 | + |
| 113 | + |
| 114 | +## NOTE: July stats |
| 115 | + |
| 116 | +* cargo |
| 117 | + * 2025-07-29: 1531 |
| 118 | + * 2025-07-22: 1335 |
| 119 | + * 2025-07-15: 600 (I was absent then) |
| 120 | + * 2025-07-08: 1919 |
| 121 | + * 2025-07-01: 1616 |
| 122 | +* lang triage: |
| 123 | + * 2025-07-02: 2023 |
| 124 | + * 2025-07-09: 2815 |
| 125 | +* libs (api and mcp) |
| 126 | + * 2025-07-01: 5774 |
| 127 | + * 2025-07-08: 5783 |
| 128 | + * 2025-07-15: 705 |
| 129 | + * 2025-07-22: 4981 |
| 130 | +* spec |
| 131 | +* leadership council |
| 132 | + * 2025-07-04: 1792 |
| 133 | + * 2025-07-18: 2228 |
| 134 | +* total across the board |
| 135 | +$ grep --no-filename '^\w\+: ' -r 2025-07-* | wc --words - |
| 136 | +42680 |
| 137 | + |
| 138 | + |
| 139 | +### NOTE: June stats |
| 140 | + |
| 141 | + |
| 142 | + |
| 143 | +* cargo |
| 144 | + * 2025-06-24: 1316 |
| 145 | + * 2025-06-17: 1362 |
| 146 | + * 2025-06-10: 1470 |
| 147 | + * 2025-06-03: 925 |
| 148 | +* lang |
| 149 | + * 2025-06-04: 1717 |
| 150 | + * 2025-06-11: 2251 |
| 151 | + * 2025-06-18: 2028 |
| 152 | + * 2025-06-25: 1597 |
| 153 | +* libs (api and mcp) |
| 154 | + * 2025-06-10: 5098 |
| 155 | + * 2025-06-03: 4412 |
| 156 | +* spec |
| 157 | +* leadership council |
| 158 | + * 2025-06-20: 1787 |
| 159 | + * 2025-06-06: 2073 |
| 160 | +* total across the board |
| 161 | +$ grep --no-filename '^\w\+: ' -r 2025-06-* | wc --words - |
| 162 | +34589 |
| 163 | + |
| 164 | +### For comparison, some May stats |
| 165 | + |
| 166 | +* cargo |
| 167 | + * 2025-05-27: 786 |
| 168 | + * 2025-05-20: 891 |
| 169 | + * 2025-05-13: 0 (skipped for RustWeek) |
| 170 | + * 2025-05-06: 936 |
| 171 | + * 2025-04-29: 816 |
| 172 | +* lang triage |
| 173 | + * 2025-05-21: 990 |
| 174 | + * 2025-05-07: 3145 |
| 175 | + * 2025-04-30: 1000 |
| 176 | + * 2025-04-23: 507 |
| 177 | +* libs (api and mcp) |
| 178 | + * 2025-05-27: 1341 |
| 179 | +* spec |
| 180 | +* leadership council |
| 181 | + * 2025-05-23: 1263 |
| 182 | + * 2025-05-09: 1344 |
| 183 | + * 2025-04-25: 2023 |
| 184 | + * 2025-04-11: 1256 |
| 185 | + |
| 186 | + |
| 187 | +TODO: pick up some small wins? (publish meeting notes, reach out to folks) |
0 commit comments