Ownership is measured by how many commits each author made to each file. It highlights bus-factor risk (files only one person has ever touched) and where knowledge is concentrated.
Files only one author has ever changed. The more a file has changed, the more knowledge is at risk if that person leaves.
| File | Sole owner | Commits |
|---|---|---|
| crates/libanalysis/src/lib.rs | Alex Kladov | 54 |
| crates/libsyntax2/src/grammar.ron | Alex Kladov | 52 |
| crates/libsyntax2/src/ast/generated.rs | Alex Kladov | 49 |
| src/syntax_kinds/generated.rs | Alex Kladov | 46 |
| grammar.ron | Alex Kladov | 46 |
| src/doc/rustc-dev-guide/ci/sembr/src/main.rs | Tshepang Mbambo | 43 |
| src/grammar.ron | Alex Kladov | 42 |
| crates/ra_analysis/src/descriptors/module/mod.rs | Alex Kladov | 41 |
| crates/server/src/main_loop/mod.rs | Alex Kladov | 39 |
| patches/stdlib-lock.toml | bjorn3 | 38 |
| library/compiler-builtins/libm/crates/libm-test/src/precision.rs | Trevor Gross | 38 |
| crates/libeditor/tests/test.rs | Alex Kladov | 38 |
| .github/workflows/rustc.yml | bjorn3 | 37 |
| src/tools/miri/priroda/src/frontend/dap.rs | Mohamed Ali | 37 |
| crates/libeditor/src/lib.rs | Alex Kladov | 35 |
| crates/server/src/main_loop/handlers.rs | Alex Kladov | 34 |
| library/compiler-builtins/libm/crates/libm-test/src/mpfloat.rs | Trevor Gross | 33 |
| crates/server/src/main.rs | Alex Kladov | 31 |
| library/compiler-builtins/libm/crates/libm-test/tests/compare_built_musl.rs | Trevor Gross | 30 |
| library/compiler-builtins/libm/crates/libm-test/Cargo.toml | Trevor Gross | 29 |
| library/compiler-builtins/libm/crates/libm-test/benches/random.rs | Trevor Gross | 28 |
| src/librustc/ty/print.rs | Eduard-Mihai Burtescu | 28 |
| src/parser/grammar/items/mod.rs | Alex Kladov | 27 |
| scripts/cargo-clif.rs | bjorn3 | 26 |
| crates/libeditor/src/completion.rs | Alex Kladov | 26 |
| crates/libeditor/src/code_actions.rs | Alex Kladov | 26 |
| library/compiler-builtins/libm/crates/libm-test/tests/multiprecision.rs | Trevor Gross | 25 |
| crates/libsyntax2/src/ast/mod.rs | Alex Kladov | 25 |
| clippy_dev/src/crater.rs | Matthias Krüger | 24 |
| crates/ra_ide/src/references/classify.rs | Alex Kladov | 24 |
| crates/server/src/req.rs | Alex Kladov | 24 |
| library/compiler-builtins/libm/src/math/generic/mod.rs | Trevor Gross | 23 |
| crates/ra_hir_def/src/keys.rs | Alex Kladov | 23 |
| crates/ra_syntax/src/ast/node_ext.rs | Alex Kladov | 23 |
| crates/ra_analysis/src/descriptors/module/nameres.rs | Alex Kladov | 23 |
| src/rustdoc/prune_undoc_pass.rs | Brian Anderson | 23 |
| tests/mir-opt/coverage/instrument_coverage.main.InstrumentCoverage.diff | Zalathar | 22 |
| patches/0002-Disable-u128-and-i128-in-libcore.patch | bjorn3 | 22 |
| examples/mini_core_hello_world.rs | bjorn3 | 22 |
| example.rs | bjorn3 | 22 |
| library/compiler-builtins/libm/.github/workflows/main.yaml | Trevor Gross | 21 |
| library/compiler-builtins/libm/crates/util/src/main.rs | Trevor Gross | 21 |
| crates/assists/src/handlers/extract_function.rs | Vladyslav Katasonov | 21 |
| examples/mini_core.rs | bjorn3 | 20 |
| library/compiler-builtins/libm/crates/libm-test/src/test_traits.rs | Trevor Gross | 20 |
| src/tools/miri/priroda/README.md | Mohamed Ali | 20 |
| src/yellow/syntax.rs | Alex Kladov | 20 |
| src/parser/grammar/mod.rs | Alex Kladov | 20 |
| clippy_lints/src/unnecessary_wrap.rs | Hirochika Matsumoto | 20 |
| tests/run-pass/float.rs | Ralf Jung | 19 |
Primary owner = the author with the most commits to a file. Solely owned = files only that author has touched.
| Author | Files owned | Solely owned | Files touched |
|---|---|---|---|
| Vadim Petrochenkov | 9310 | 3295 | 16721 |
| Albert Larsan | 6665 | 6632 | 27736 |
| Esteban Küber | 6608 | 2012 | 15593 |
| Ralf Jung | 6429 | 1854 | 11639 |
| Jieyou Xu | 6344 | 217 | 13403 |
| Oliver Scherer | 5908 | 1579 | 16638 |
| Alex Kladov | 5333 | 3911 | 6964 |
| Philipp Krones | 5223 | 41 | 6422 |
| David Wood | 4904 | 4560 | 13736 |
| Michael Goulet | 4758 | 1637 | 11442 |
| Guillaume Gomez | 4425 | 2929 | 13060 |
| Felix S. Klock II | 4192 | 3178 | 8677 |
| Mark Rousskov | 4098 | 67 | 18344 |
| Niko Matsakis | 3148 | 1144 | 8334 |
| Noratrieb | 2954 | 116 | 10391 |
| Alex Crichton | 2902 | 615 | 10446 |
| lcnr | 2636 | 676 | 5078 |
| Lukas Wirth | 2256 | 546 | 4884 |
| Nicholas Nethercote | 1749 | 148 | 6899 |
| Zalathar | 1738 | 833 | 2763 |
| Patrick Walton | 1713 | 45 | 4581 |
| Matthew Jasper | 1703 | 368 | 5056 |
| Yuki Okushi | 1702 | 647 | 3734 |
| Camille Gillot | 1518 | 474 | 6322 |
| Waffle Lapkin | 1489 | 347 | 4179 |
Files touched by the most people — shared code where changes are most likely to need coordination.
| File | Contributors | Primary owner | Owner share |
|---|---|---|---|
| Cargo.lock | 518 | bjorn3 | 9.8% |
| README.md | 410 | Ralf Jung | 13.5% |
| clippy_lints/src/lib.rs | 404 | Philipp Krones | 12.1% |
| CHANGELOG.md | 371 | Philipp Krones | 11.9% |
| compiler/rustc_span/src/symbol.rs | 289 | Nicholas Nethercote | 5.2% |
| src/libsyntax/parse/parser.rs | 263 | Patrick Walton | 11.3% |
| clippy_lints/src/methods/mod.rs | 248 | Philipp Krones | 15.0% |
| src/librustdoc/clean/mod.rs | 235 | Guillaume Gomez | 12.2% |
| compiler/rustc_target/src/spec/mod.rs | 219 | Ralf Jung | 7.4% |
| src/librustdoc/lib.rs | 212 | Alex Crichton | 10.3% |
| Cargo.toml | 208 | bjorn3 | 14.2% |
| src/lib.rs | 208 | bjorn3 | 27.8% |
| library/std/src/lib.rs | 205 | Ralf Jung | 5.4% |
| src/librustc_typeck/check/mod.rs | 204 | Niko Matsakis | 11.7% |
| compiler/rustc_session/src/options.rs | 197 | Nicholas Nethercote | 4.8% |
| src/tools/compiletest/src/runtest.rs | 193 | Zalathar | 7.8% |
| src/doc/rustc/src/platform-support.md | 183 | Eric Huss | 3.1% |
| library/core/src/lib.rs | 181 | Ralf Jung | 9.1% |
| src/libstd/lib.rs | 179 | Alex Crichton | 25.1% |
| compiler/rustc_session/src/config.rs | 177 | Nicholas Nethercote | 9.3% |