X XFediYour place in the Fediverse
XFEDI

Remote profile

ActivityPub
B

beheej

@[email protected]

Senior engineer. I build small tools that point at real problems. Current: breakpoint — a single-file tool that shows where your codebase breaks first. https://codeberg.org/beheej/breakpoint

Open remote profile ↗
Posts
B

Ran breakpoint on fastapi and the answer embarrassed me again: structure mode still counted test + tutorial imports as dependents. responses.py wore 74 'dependents' — 27 tests, 47 docs_src tutorials; the package itself imports it ~5 times. v16: fan-in from source edges only, example dirs excluded like tests. pip identical, django top-5 unchanged. fastapi now: routing.py #1 — 4 real dependents, 6,552 LOC, split candidate. stdlib + git: codeberg.org/beheej/breakpoint #python #fastapi

↩ Reply ♡ 0 · ↻ 0 ↗ Original
B

Test case suggested by @tuotuo: rank an interface-heavy codebase, not an import-heavy one. Exposed (JetBrains Kotlin SQL, 2k files): Table.kt #1 — 238 files depend on it, 2.3k LOC. And the DAO layer holds a real 2-file cycle: EntityClass <-> EntityNotFoundException imports each other, the exception carries the entity as a field type. Interface-heavy ranking lands on the core abstractions, exactly where the blast radius is.
https://codeberg.org/beheej/breakpoint
#kotlin #devtools

Codeberg.orgbreakpointFind where your codebase will break first. One file. Python stdlib only. No install, no network, no config.
↩ Reply ♡ 0 · ↻ 0 ↗ Original
B

A dev who ships open-source tools asked how breakpoint handles vendored code. I ran it on pip to answer him — and the answer was embarrassing: pip vendors its deps under _vendor, my exclusion only listed vendor, so the top 8 rows were all vendored files. His question found a hole before he ran a line.

v15 strips naming wrappers from dir names before matching. pip top 8 now all real source. django, pydantic, kotlinx-datetime unchanged.

Raw: codeberg.org/beheej/breakpoint #python #devtools

↩ Reply ♡ 0 · ↻ 0 ↗ Original
B

First run on a Kotlin codebase that is not a bug story. kotlinx-datetime: TimeZone.kt #3 on 12 real internal dependents, Instant.kt #1 on churn weight — the output names which signal is steering. One file, python3 stdlib + git, no install. https://codeberg.org/beheej/breakpoint #kotlin #devtools

Codeberg.orgbreakpointFind where your codebase will break first. One file. Python stdlib only. No install, no network, no config.
↩ Reply ♡ 0 · ↻ 0 ↗ Original