MaintainerPulse

temporal prediction of dependency maintenance risk

xlrd3 Dragon2fly/xlrd3 ▲ high risk

100%
no release in the next 12 months
54%
new issues will go unanswered (30 days)
100%
maintainer activity collapse within 12 months
13%
chance of a release within 12 months (survival model)

Model risk over time

calibrated P(no release next 12mo) at each historical monthly snapshot
0%50%100%2020-122022-062023-122025-06high risk

Repository activity, last 36 months

pushes issues PyPI release
0122023-102023-11

What drives this score

TreeSHAP contributions; raises risk / lowers risk
days since last release+releases, last 12mo+releases, all time+months since last push+

Survival curve

P(still no release) m months ahead, discrete-time hazard model
0%50%100%036912

What if? — poke the model

drag a signal and the deployed models rescore this package live (implied signals move together — two years without a release also zeroes "releases, last 12mo"). The needle tracks the activity-collapse model, a logistic regression: monotone by construction, so it responds smoothly to counterfactuals where the tree models step.

maintainer activity collapse, 12mo

In plain words

Maintained alternatives

similar packages with low predicted risk; ranked by summary similarity blended with shared-dependents overlap, validated against known migrations
packagewhat it issimilarity shared dependentsits 12mo risk
xlwings Make Excel fly: Interact with Excel from Python and vice versa. 0.50 0 1%
gspread Google Spreadsheets Python API 0.46 0 21%

Signals at the latest snapshot

days since last release 1955 releases, last 12mo 0
people pushing, last 12mo 0 bus factor (top pusher share) -
issues opened, last 12mo 0 30-day response rate no issues
stars accumulated 11 open vulns without fix 0

Probabilities are isotonic-calibrated on a held-out validation year and evaluated on future snapshots the models never saw (PR-AUC 0.894, precision@50 = 1.00 on the headline target).