Rewindex

CompaniesPyPI (Python Infrastructure)Incidents

PyPI (Python Infrastructure): Multiple services unavailable

CriticalStatus: resolvedStarted Resolved (1.1 h)1 updatestatus.python.org (opens in new tab)
Part of an outage event

Heroku outage, Mar 16, 2020 · 8 vendors, 9 incidents

PyPI (Python Infrastructure)’s incident started in the same window without naming Heroku (timing only, not evidence of a link). (timing only, posted −4 min vs the first vendor naming Heroku)

Swipe sideways to see the whole diagram.

same windowHerokuown incident not archivedWithin an hour4 vendors, 4 blamed HerokuRevenueCat, Substack, Bitrise, crates.io1 to 4 hours later1 vendor, 1 blamed HerokuRevenueCatPyPI (Python Infrastructure) (this incident)posted −4 min
same windowHerokuown incident not archivedWithin an hour4 vendors, 4 blamed HerokuRevenueCat, Substack, Bitrise,crates.io1 to 4 hours later1 vendor, 1 blamed HerokuRevenueCatPyPI (Python Infrastructure)(this incident)posted −4 min
PyPI (Python Infrastructure) is outlined in red. Groups show up to a few vendors each; the event page lists every incident.
Mermaid source
flowchart LR
  root["Heroku<br/>own incident not archived"]:::inferred
  h1["Within an hour<br/>4 vendors, 4 blamed Heroku<br/>RevenueCat, Substack, Bitrise, crates.io"]:::blames
  root --> h1
  h4["1 to 4 hours later<br/>1 vendor, 1 blamed Heroku<br/>RevenueCat"]:::blames
  root --> h4
  me["PyPI (Python Infrastructure) (this incident)<br/>posted −4 min"]:::me
  root -.->|"same window"| me

Full event: timeline, evidence and all vendors →

Detected automatically from incidents that started together and named the same provider. A link means one vendor’s incident named another, not a confirmed cause.

Timeline of updates

  1. resolved

    This incident has been resolved.

From PyPI (Python Infrastructure)’s published incident history: for incidents before Rewindex began polling this status page, only the final update text is available.

Archive proof

Rewindex commits each version of an incident it captures to a daily checkpoint, chains it to the day before, and has the checkpoint timestamped by FreeTSA and DigiCert.

How the archive is checked, and what it cannot prove.

This incident predates live tracking (October 17, 2026). It came from the vendor’s own published history, which is not covered by checkpoints.

Impact, status and times are the vendor’s own, as last archived. View on status.python.org (opens in new tab).

PyPI (Python Infrastructure) profileRecent PyPI (Python Infrastructure) incidentsMarkdownJSON