Skip to content

Commit f7f0d53

Browse files
authored
feat: add coding guidelines meeting notes from 2025-12-10 (Safety-Critical-Rust-Consortium#536)
1 parent 0e64824 commit f7f0d53

1 file changed

Lines changed: 155 additions & 0 deletions

File tree

  • subcommittee/coding-guidelines/meetings/2025-12-10
Lines changed: 155 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,155 @@
1+
# **Coding Guidelines Subcommittee Meeting on 2025-12-10 @ 1700 CEST / 1100 EDT**
2+
3+
[Link](https://www.worldtimebuddy.com/?qm=1&lid=5,100,2643743,12,1850147,2193733,8,6,2673730,1261481&h=5&date=2025-12-10&sln=11-12&hf=1) to meeting time in common time zones.
4+
5+
| Search Key | Description |
6+
| ----- | ----- |
7+
| \[todo\] | Action Item |
8+
| \[decision\] | Something decided on |
9+
| \[important\] | Key information |
10+
11+
## **Agenda**
12+
13+
1. Solicitation of notetaker
14+
2. Acceptance of [Previous Meeting Minutes](https://github.com/darkwisebear/safety-critical-rust-consortium/blob/f63c6e4e3faf967e7a56157d6947300aa034b04f/subcommittee/coding-guidelines/meetings/2025-11-19/minutes.md)
15+
3. Introduction of new members
16+
4. Review progress on guidelines incorporated from CERT
17+
* [High-level mapping of CERT rule groups to Rust](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/152)
18+
* Integers \- Félix Fischer
19+
* Arrays \- Alex Celeste
20+
* Floating Point \- Andrew Fernandes
21+
5. Merging of [Add GOALS.md, revise contribution process, freshen up to use arewesafetycriticalyet.org](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/pull/149) has happened
22+
* Any comments & updates here? Any new issues created?
23+
* [Issue 237](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/237): We need to document how to add labels. Would we want to define them?
24+
6. Improvements to the markdown have been merged:
25+
* [Issue \-\> PR conversion of hyperlinks](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/pull/226)
26+
* [Issue \-\> PR conversion of code blocks](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/pull/227)
27+
* [Issue \-\> PR conversion of tables](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/pull/228)
28+
* Example: [Bot Comment: RST Preview for Coding Guideline](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/246#issuecomment-3618884352)
29+
7. Call for opinions: What’s the role definition of a producer?
30+
8. Proposals and ideas for new rules
31+
9. Progress on ongoing tasks
32+
* [Defensive Programming Rules](https://corrode.dev/blog/defensive-programming/)
33+
* (Félix) The [fallible\_impl\_from](https://rust-lang.github.io/rust-clippy/master/index.html#fallible_impl_from) lint is in the nursery group, which means it’s not even close to production ready. So I don’t like that they recommended it.
34+
The other lints are fine (at least technically)
35+
* [PR 220 (merged)](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/pull/220): alignment done between David and Felix?
36+
* [Issue 97 (\[Guideline\] Avoid Complex or Recursive Macro Constructs)](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/97):
37+
No update. Should we just let it linger?
38+
* (Felix) I’ve been researching this:
39+
[\#wg-macros \> What would you say makes a Decl. Macro hard to maintain?](https://rust-lang.zulipchat.com/#narrow/channel/404510-wg-macros/topic/What.20would.20you.20say.20makes.20a.20Decl.2E.20Macro.20hard.20to.20maintain.3F/with/562037901)
40+
* Also [I've formalized a proof that macro expansion is Turing Complete](https://lukaswirth.dev/tlborm/decl-macros/minutiae/turing-completeness.html)
41+
This constrains our static analysis capabilities re: declarative macros
42+
* [Issue 133 (\[Guideline\] Prevent OS command injection)](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/133):
43+
Imo mergeable, can we proceed?
44+
* [Issue 259 (\[Guideline\] Do not perform ordering comparisons on pointers from different allocations)](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/259): Needs a reviewer
45+
* [Issue 257 (UCG \- Rust's Unsafe Code Guidelines)](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/257): How do we organize the work?
46+
10. Round table
47+
48+
## **Check-in area**
49+
50+
Please add your name, and an emoji that describes your day.
51+
52+
* Pete LeVasseur 🖍️
53+
* Markus Hosch
54+
* Robert C. Seacord 😣
55+
* Christof Petig 🎄
56+
* Fernando Jose 🙂
57+
* Félix Fischer 😪☕
58+
* Lachlan Dowling
59+
* Oreste Bernardi 🫥
60+
* Kaneko Satoshi
61+
62+
Notetaker:
63+
64+
* Pete LeVasseur
65+
66+
For tips on how we take notes in the Safety-Critical Rust Consortium, please see the [Meeting Notetaker Role](https://github.com/rustfoundation/safety-critical-rust-consortium/blob/main/docs/notetaker-role.md) doc.
67+
68+
## **Housekeeping section**
69+
70+
* Document space: [coding-guidelines](https://github.com/rustfoundation/safety-critical-rust-consortium/tree/main/subcommittee/coding-guidelines)
71+
* Zulip: [safety-critical-consortium: Coding Guidelines](https://rust-lang.zulipchat.com/#narrow/channel/445688-safety-critical-consortium/topic/Coding.20Guidelines)
72+
* [Kanban board](https://github.com/orgs/rustfoundation/projects/1/views/3)
73+
* [contributor experience](https://github.com/orgs/rustfoundation/projects/1/views/4) view
74+
* [coding guideline](https://github.com/orgs/rustfoundation/projects/1/views/5) view
75+
* [Un-promoted Guideline Issues grooming list](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues?q=is%3Aissue%20state%3Aopen%20-label%3A%22sign-off%3A%20create%20pr%20from%20issue%22%20label%3A%22coding%20guideline%22)
76+
77+
## **Tasks**
78+
79+
* See **\[todo\]** tags below in Meeting Minutes
80+
81+
## **Meeting Minutes**
82+
83+
* 2\. Acceptance of [Previous Meeting Minutes](https://github.com/darkwisebear/safety-critical-rust-consortium/blob/f63c6e4e3faf967e7a56157d6947300aa034b04f/subcommittee/coding-guidelines/meetings/2025-11-19/minutes.md)
84+
* Accepted, merged
85+
* 4\. Review progress on guidelines incorporated from CERT
86+
* Integers \- Félix Fischer
87+
* Progress on-going, some guidelines have been merged
88+
* More inflow from folks seen on Rust Zulip, helps give additional insights and credibility
89+
* Make the check-in still a regular cadence, but monthly rather than each meeting
90+
* 5\. Merging of [rustfoundation/safety-critical-rust-coding-guidelines\#149](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/pull/149) has happened
91+
* Any comments & updates here? Any new issues created?
92+
* [Issue 237](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/237): We need to document how to add labels. Would we want to define them?
93+
* Good to have in documentation on how to do it
94+
* \[todo\] Pete to tackle this issue
95+
* \[todo\] Markus to create issue ([https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/267](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/267)) for generating from `src/conf.py` into some part of the rendered document and/or the documentation in Markdown in the repo in an automated fashion
96+
* \[todo\] Robert to document the ISO document he’s using for tags
97+
* 6\. Improvements to the markdown have been merged
98+
* Feel free to open issues if you have thoughts on how to improve contributing
99+
* 7\. Call for opinions: What’s the role definition of a producer?
100+
* As we get more coding guidelines contributions, it’ll be important to provide more consistent feedback
101+
* Pete shared [proposal](https://rust-lang.zulipchat.com/#narrow/channel/445688-safety-critical-consortium/topic/.5BChange.20Proposal.5D.20Coding.20Guidelines.20Producers.20to.20Review/with/562990966)
102+
* Feedback welcome on that Zulip topic
103+
* Tip shared on using bot like in Clippy repo. [Example](https://github.com/rust-lang/rust-clippy/pull/16211#issuecomment-3637592322)
104+
* \[todo\] Pete to open issue on how to automate in similar manner if we’d like to proceed if it fits
105+
* 8\. Proposals and ideas for new rules
106+
* Robert posted up a few sets of ideas
107+
* [https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/233](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/233)
108+
* [https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/254](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/254)
109+
* Suggestion to start to open coding guidelines issues for the ones that have rationale at a minimum
110+
* MISRA / CERT coverage?
111+
* Worthwhile to go through for ideas
112+
* No need to limit, can still create issues
113+
* Being transparent on what’s being worked on in issues and pull requests is worthwhile here to ensure double work isn’t done
114+
* Kanban-style board would be worthwhile
115+
* Exists here, open to improve how it works: [https://github.com/orgs/rustfoundation/projects/1/views/5](https://github.com/orgs/rustfoundation/projects/1/views/5)
116+
* Usage of AI for guidelines discussion
117+
* Initial quality seems quite low from what was seen on a couple of them
118+
* Concern over reviewers wasting time
119+
* Thought: Do a poll regarding what sorts of practices cause issues in safety-critical to derive some common items in Rust that could be targeted.
120+
* Concern over burning credibility with Rust Project folks
121+
* Two ways to get feedback on the internet:
122+
* Please help: nobody helps
123+
* Write something stupid: people want to jump in and help
124+
* Ideally our internal group reviews it first, then having outside folks, e.g. Rust Project have review
125+
* Goes back to same challenge: getting people in the group more actively reviewing PRs
126+
* Posting somewhat incomplete, perhaps vague things happens and this is still worthwhile for soliciting feedback
127+
* Until close to “release” it’s possible that up till now folks had not been reviewing in great detail. Once we’re close to release, we’ll probably get a lot of feedback in a burst.
128+
* Suggestion for improvement: it’s possible to start PRs as draft to iterate among coding guidelines group, then upgrade from draft
129+
* Issues already kind of like this?
130+
* Found issues to be wrong place to iterate on coding guidelines, cannot pick a particular line to comment on
131+
* Would suggest contributor to create PR right away to make review easier
132+
* Issue more as a quick check for whether it makes sense
133+
* 9\. Progress on ongoing tasks
134+
* [Defensive Programming Rules](https://corrode.dev/blog/defensive-programming/)
135+
* \[todo\] Oreste to open general issue to capture this so we keep track of it
136+
* Some of the suggestions in the linked article above might not be a good fit, since it might entail turning on a Clippy rule which is not mature enough yet (i.e. in nursery)
137+
* [Issue 97 (\[Guideline\] Avoid Complex or Recursive Macro Constructs)](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/97)
138+
* Félix added some of the links he’s aware of for context to the linked issue
139+
* [Issue 133 (\[Guideline\] Prevent OS command injection)](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/133)
140+
* \[todo\] David Svboda \- Let’s proceed to having a PR opened
141+
* [Issue 259 (\[Guideline\] Do not perform ordering comparisons on pointers from different allocations)](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/259)
142+
* Should we be doing `unsafe` keyword guidelines right now?
143+
* Yes, it’s a part of the language and important to highlight these and do the work
144+
* Rust’s memory model is not clearly enough specified in some cases, so we should be careful in what we right down
145+
* It’s good to post when there’s an “uncharted area” to make sure it’s clear
146+
* Some areas where consensus has been reached are more in the clear for guidelines
147+
* \[todo\] Félix to add a tracking issue on what’s been settled when it comes to Rust’s memory model to help guide us
148+
149+
## **Material**
150+
151+
Any material to read before the meeting should be included here.
152+
153+
* Milestone: [Prepare for launch to wider Rust community](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/milestone/1)
154+
* FLS Maintenance: [FLS Team \- North Star](https://hackmd.io/@plevasseur/HJb6qomOge/edit)
155+
* [Github Issue to discuss about panicking in Safety Critical](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/158)

0 commit comments

Comments
 (0)