Skip to content

FFI codeowners-rs - #126

Merged
perryqh merged 17 commits into
mainfrom
ph/native-extension
Aug 14, 2025
Merged

FFI codeowners-rs#126
perryqh merged 17 commits into
mainfrom
ph/native-extension

Conversation

@perryqh

@perryqhperryqh commented Aug 12, 2025

Copy link
Copy Markdown
Contributor

What is this change doing?

Replaces github CODEOWNERS generation, validation, and per-file ownership ruby implementation with a FFI to codeowners-rs.

This is a breaking change as extensions will no longer be supported.

Why?

The pure ruby implementation is very slow against a large repo

Ruby -> Rust

Screenshot 2025-08-13 at 14 05 14

Benchmark 1: direct codeowners-rs
Benchmark 2: code_ownership gem -> codeowners-rs (this PR). Less than 1/2 second slower than pure rust!

Ruby only - code_ownership v1.39.0

Screenshot 2025-08-13 at 14 08 31

Benchmark 1: code_ownership v1.39.0

@perryqhperryqh changed the title [WIP] Native extension[WIP] FFI codeowners-rsAug 12, 2025
@perryqh
perryqhforce-pushed the ph/native-extension branch from c611a49 to a614bc8CompareAugust 12, 2025 00:46
@perryqh
perryqhforce-pushed the ph/native-extension branch from a614bc8 to e743fadCompareAugust 12, 2025 00:53
@perryqhperryqh changed the title [WIP] FFI codeowners-rsFFI codeowners-rsAug 12, 2025
@perryqh
perryqhforce-pushed the ph/native-extension branch from 716b196 to 15dad90CompareAugust 12, 2025 12:39
@perryqh
perryqhforce-pushed the ph/native-extension branch from 15dad90 to 0ea6b27CompareAugust 12, 2025 12:39
@perryqh
perryqhforce-pushed the ph/native-extension branch from d502e94 to dbc8624CompareAugust 12, 2025 21:12
@perryqh
perryqh marked this pull request as ready for review August 13, 2025 19:11

@ashleywillardashleywillard left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🚀

@perryqh
perryqh merged commit ffac2f5 into mainAug 14, 2025
9 checks passed
@perryqh
perryqh deleted the ph/native-extension branch August 14, 2025 22:12
@github-project-automationgithub-project-automationBot moved this from Triage to Done in ModularityAug 14, 2025
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants

@perryqh@ashleywillard