crateio/crate-site — pull request #35 by dstufft (2012-03-11 08:18:04+00:00)
Title: Don't Delete Releases or Files, Only (Partially) Hide their data.

When an author deletes a release or a file this causes projects and distributions that depend on that release or file to have failed deployments. This Fixes that issue.

* When a File is deleted from PyPI it is marked as hidden in Crate
* When a Release is deleted from PyPI it is marked as hidden in Crate
* Hidden Files do not show up on the crate.io/package/*/ page
* Hidden Releases are displayed greyed out with a strike though on listing of versions, and their details are not displayed, instead a message stating it's been deleted is shown.
* Deleted releases are not eligible for acting as the latest release when you go to the non version specific package page
* Hidden Releases and Files do not show up on the simple or restricted page [(simple|restricted).crate.io/package-name/].
* Hidden Releases and Files *do* show up on the version specific simple page [(simple|restricted).crate.io/package-name/version-number/].
* Tools like pip (I know pip currently does) can check this page when a specific version is pinned (package-name==pacakge-version).
* This allows pinning a version to not start failing because a package author decides to delete his or her releases from PyPI.

Basically this is designed to prevent this:

![httplib2 fail](http://cl.ly/1X0f2w3M1s1x062B1t1Z/Image%202012.03.11%204:16:52%20AM.png "httplib2 fail")