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

[naga] Add a review checklist. #6906

Merged
merged 1 commit into from
Feb 11, 2025

Conversation

jimblandy
Copy link
Member

How do folks feel about this? I'm not wedded to the idea, but it seemed like it might be helpful.

https://www.newyorker.com/magazine/2007/12/10/the-checklist

@jimblandy jimblandy added the naga Shader Translator label Jan 13, 2025
@jimblandy jimblandy requested a review from a team January 13, 2025 20:03
@jimblandy jimblandy force-pushed the naga-review-checklist branch from 9199174 to 755ab13 Compare January 13, 2025 20:05
@ErichDonGubler
Copy link
Member

This feels like it would be most useful as a GH PR template, where folks could actually look at it be confronted with it automatically?

Comment on lines 21 to 63
## General

If your change iterates over a collection, did you ensure the order of
iteration was deterministic? Using `HashMap` and `HashSet` is fine, as
long as you don't iterate over it.

## IR changes

If your change adds or removes `Handle`s from the IR:
- Did you update handle validation in `valid::handles`?
- Did you update the compactor in `compact`?
- Did you update `back::pipeline_constants::adjust_expr`?

If your change adds a new operation:
- Did you update the typifier in `proc::typifier`?
- Did you update the validator in `valid::expression`?
- If the operation can be used in constant expressions, did you
update the constant evaluator in `proc::constant_evaluator`?

## Backend changes

- If your change introduces any new identifiers, how did you ensure
they won't conflict with the users' identifiers? (This is usually
not relevant to the SPIR-V backend.)
- Did you use the `Namer` generate a fresh identifier?
- Did you register the identifier as a reserved word with the the `Namer`?
- Did you use a reserved prefix registered with the `Namer`?

## WGSL Extensions

If you added a new feature to WGSL that is not covered by of the WebGPU specification:

- Did you add a `Capability` flag for it?
- Did you document the feature fully in that flag's doc comment?
- Did you ensure the validator rejects programs that use the feature?
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

question: I'm concerned about this staying up-to-date, because both contributors and reviewers need to mind this content manually. How will this be achieved?

@cwfitzgerald
Copy link
Member

I do wonder how much of this is a culture thing and drilling it in to everyone to rely on the checklist.

The one thing I would say is this should be at the root of the repo or in a sub-page of contributing, not in the naga subfolder as it'll too easily get lost.

@jimblandy
Copy link
Member Author

This feels like it would be most useful as a GH PR template, where folks could actually look at it be confronted with it automatically?

As a PR template, wouldn't this be confronting contributors with a long list that is usually almost entirely irrelevant to their PR? I feel like this makes more sense in CONTRIBUTING.md.

@ErichDonGubler
Copy link
Member

I think I'm going to be able to review this on Tuesday of this coming week. 🫡 See you then!

Copy link
Member

@ErichDonGubler ErichDonGubler left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

:shipit:

@jimblandy
Copy link
Member Author

In the maintainers' meeting today, we resolved to move this to the wgpu top-level directory, move the content into a Naga-specific section, and link to it from CONTRIBUTING.md.

Copy link
Member

@cwfitzgerald cwfitzgerald left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Needs changes per meeting

@jimblandy jimblandy force-pushed the naga-review-checklist branch 4 times, most recently from 9355503 to 9d4a2eb Compare February 10, 2025 20:21
@jimblandy jimblandy requested a review from a team as a code owner February 10, 2025 20:21
@jimblandy jimblandy force-pushed the naga-review-checklist branch 3 times, most recently from 3c9f174 to a590dad Compare February 10, 2025 20:26
@cwfitzgerald cwfitzgerald merged commit 8e235b4 into gfx-rs:trunk Feb 11, 2025
33 checks passed
marcpabst pushed a commit to marcpabst/wgpu that referenced this pull request Feb 19, 2025
davnotdev pushed a commit to davnotdev/wgpu that referenced this pull request Mar 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
naga Shader Translator
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants