{% extends "page.html" %} {% block title %} {{ project.name }} ยท {{ super() }} {% endblock title %} {% block extra_head %} {{ super() }} {% endblock extra_head %} {% macro page_banner() %}

{{ project.name }} {{ this_release.version }}


{% if 'latest-release' in this_release.labels %} pip install {{ project.name }} {% else %} pip install {{ project.name }}=={{ this_release.version }} {% endif %}

{% if 'yanked' in this_release.labels %} {# Note: We don't include partial yank in this condition intentionally. #}   This release has been yanked {% elif 'latest-release' in this_release.labels %}   Latest version {% else %}   Newer version available ({{ latest_release.version }}) {% endif %}

Released: {% set release_date=file_info.upload_time %} {% if (release_date and release_date.year > 1990) %} {{ release_date.strftime('%b %d, %Y') }} {% else %} Unknown {% endif %}
{% endmacro %} {% block page_content %}
{{ page_banner() }}

Project Links {% set icon_lookup={ "Blog": "fa-blog", "Community": "fa-users", 'Documentation': 'fa-book', 'Download': 'fa-download', 'Donate': 'fa-donate', 'Forum': 'fa-comments', "Source": "fa-code-branch", "Github": "fa-code-branch", "Repository": "fa-code-branch", "Releases": "fa-tags", "Source Code": "fa-code-branch", "Code": "fa-code-branch", "Tracker": "fa-bug", "Issues": "fa-bug", "Bug Tracker": "fa-bug", "Discussions": "fa-comments", "Changelog": "fa-scroll", "Release Notes": "fa-scroll", "Homepage": "fa-home", } %} {% for name, url in file_metadata.project_urls.items() %} {% set fa_icon=icon_lookup.get(name, 'fa-link') %} {% endfor %}

Meta {% if file_metadata.author %}
Author: {{ file_metadata.author }}
{% endif %} {% if file_metadata.maintainer %}
Maintainer: {{ file_metadata.maintainer }}
{% endif %} {% if file_metadata.requires_python %}
Requires Python: {{ file_metadata.requires_python }}
{% endif %}
{% block sidebar_additional_content %} {% endblock sidebar_additional_content %}
Classifiers
{% for classifier_header, classifiers in classifiers_by_top_level.items() %}
{{ classifier_header }}
    {% for classifier in classifiers %}
  • {{ classifier.split('::', 1)[1] }}
  • {% endfor %}
{% endfor %}
{{ file_metadata.description|safe or 'Description not available' }}
{% if compatibility_matrix.matrix %}

Wheel compatibility matrix

{% for py_abi_name in compatibility_matrix.py_and_abi_names %} {% endfor %} {% for platform_tag in compatibility_matrix.platform_names %} {% for py_and_abi in compatibility_matrix.py_and_abi_names %} {% endfor %} {% endfor %}
Platform {{ py_abi_name }}
{{ platform_tag }} {% if (py_and_abi, platform_tag) in compatibility_matrix.matrix %} {% endif %}

{% endif %}

Files in release

{% if not file_metadata.requires_dist %} No dependencies {% else %}
Extras: {% for extra in file_metadata.requires_dist.extras() %} {% else %} None {% endfor %}
Dependencies: {% for requirement in file_metadata.requires_dist %} {% if not requirement.is_valid %}
Invalid requirement ("{{ requirement.spec }}")
{% else %} {# For now, take just the first extra. #} {% set extra=file_metadata.requires_dist.extra_for_requirement(requirement) %}
{{ requirement.name }}{% if requirement.extras %}[{{ ','.join(requirement.extras) }}]{% endif %} {{ render_markers( requirement, format_strings={ 'combine_nested_expr': '''{lhs} {op} {rhs}''', 'expr': '''''', } )|safe }} {% if requirement.specifier %} ({{ requirement.specifier }}) {% endif %} {% if requirement.url %} ({{ requirement.url }}) {% endif %}
{% endif %} {% endfor %}
{% endif %}
{% endblock page_content %} {% block extra_footer %} {{ super() }} {% endblock extra_footer %}