mirror of
https://github.com/LukeHagar/pypistats.org.git
synced 2025-12-06 04:21:09 +00:00
add FAQs
This commit is contained in:
37
pypistats/templates/faqs.html
Normal file
37
pypistats/templates/faqs.html
Normal file
@@ -0,0 +1,37 @@
|
||||
{% extends "layout.html" %}
|
||||
{% block title %}PyPI Download Stats{% endblock %}
|
||||
{% block body %}
|
||||
<h1>FAQs</h1>
|
||||
<hr>
|
||||
<h3>
|
||||
What is the source of the download data?
|
||||
</h3>
|
||||
<p>
|
||||
PyPI provides download records as a publicly available dataset on Google's BigQuery. You can access the data with a Google Cloud account <a href="https://bigquery.cloud.google.com/table/the-psf:pypi.downloads">here</a>.
|
||||
</p>
|
||||
<h3>
|
||||
When is the website data updated?
|
||||
</h3>
|
||||
<p>
|
||||
The data update begins at 01:00:00 UTC and should take less than 10 minutes.
|
||||
</p>
|
||||
<h3>
|
||||
Why are there so many more downloads after July 26, 2018?
|
||||
</h3>
|
||||
<p>
|
||||
PyPI download records are generated by a service known as <a href="https://github.com/pypa/linehaul">linehaul</a>. The previous iteration of the service had an issue which caused it to restart regularly due to running out of memory, resulting in a large quantity of dropped download records. On July 26, a newer version of the service was deployed, which is much more robust and reliable.
|
||||
</p>
|
||||
<h3>
|
||||
Why are the cumulative download counts different from the sum of the downloads from the <i>overall</i> chart?
|
||||
</h3>
|
||||
<p>
|
||||
The cumulative download counts consider only the download records which are not from a known set of PyPI mirror applications, namely <code>bandersnatch</code>, <code>z3c.pypimirror</code>, <code>Artifactory</code>, and <code>devpi</code>. In other words, the cumulative download counts take the sum of the downloads from the <i>Without_mirrors</i> dataset from the chart.
|
||||
</p>
|
||||
<h3>
|
||||
Why disregard mirrors from aggregated data?
|
||||
</h3>
|
||||
<p>
|
||||
The intent of disregarding mirrors is to provide metrics that reflect end-user download aggregation.
|
||||
</p>
|
||||
|
||||
{% endblock %}
|
||||
@@ -65,6 +65,8 @@
|
||||
<br>
|
||||
<a href="{{ url_for('general.about') }}">About</a>
|
||||
<br>
|
||||
<a href="{{ url_for('general.faqs') }}">FAQs</a>
|
||||
<br>
|
||||
</p>
|
||||
</p>
|
||||
</footer>
|
||||
|
||||
@@ -80,6 +80,12 @@ def about():
|
||||
return render_template("about.html", user=g.user)
|
||||
|
||||
|
||||
@blueprint.route("/faqs")
|
||||
def faqs():
|
||||
"""Render the FAQs page."""
|
||||
return render_template("faqs.html", user=g.user)
|
||||
|
||||
|
||||
@blueprint.route("/packages/<package>")
|
||||
def package(package):
|
||||
"""Render the package page."""
|
||||
|
||||
Reference in New Issue
Block a user