rust-windowing / rust-windowing/winit

Discuss PR merge strategies for 0.20-post-alpha

Open
#970 8 comments 4 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

C - needs discussion S - meta
Dominant language
Rust
Stars
6.2k
Forks
1.3k
Avg merge
2d 19h
Merged PRs (30d)
9

Description

I'd like to start a discussion regarding how we merge PRs in the future (such as after we get to 0.20 beta, for example) to make commit history more readable.

Why: Mega-commits (resulting from the current stash-the-whole-PR-into-one-commit setting) are hard to read, especially when hunting down regressions. Examples:

  • 9602716ed2e0b70a4b7714763f63531cd4c46626 (Event Loop 2.0 API and Windows implementation (#638))
  • d5391686ae98914ba54e30d872d0e42b5ab5800c (Squashed commit of the following: (#853))

On the other hand, I think squashing a handful of PR commits like "implemented foo" – "documented foo" – "oh, and changelog btw" into a single-commit merge is fine, as long as the resulting commit stays readable.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Review the two cited commits and the repository's current PR merge settings, then compare how squashing affects readable history and regression hunting. Done means reaching and documenting an agreed merge strategy for post-0.20-beta work; no implementation file or test is named.

Written by the indexing model from the issue text.

Assessment

Domain
developer-experience
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.