Changeset View
Changeset View
Standalone View
Standalone View
swh/loader/package/pypi/loader.py
# Copyright (C) 2019 The Software Heritage developers | # Copyright (C) 2019-2020 The Software Heritage developers | ||||
ardumont: copyright... | |||||
# See the AUTHORS file at the top-level directory of this distribution | # See the AUTHORS file at the top-level directory of this distribution | ||||
# License: GNU General Public License version 3, or any later version | # License: GNU General Public License version 3, or any later version | ||||
# See top-level LICENSE file for more information | # See top-level LICENSE file for more information | ||||
import os | |||||
import logging | import logging | ||||
import json | |||||
import os | |||||
from typing import Any, Dict, Iterator, Optional, Sequence, Tuple | from typing import Any, Dict, Iterator, Optional, Sequence, Tuple | ||||
from urllib.parse import urlparse | from urllib.parse import urlparse | ||||
import attr | import attr | ||||
from pkginfo import UnpackedSDist | from pkginfo import UnpackedSDist | ||||
from swh.model.model import ( | from swh.model.model import ( | ||||
Person, | Person, | ||||
▲ Show 20 Lines • Show All 42 Lines • ▼ Show 20 Lines | def __init__(self, url): | ||||
self.provider_url = pypi_api_url(self.url) | self.provider_url = pypi_api_url(self.url) | ||||
@property | @property | ||||
def info(self) -> Dict: | def info(self) -> Dict: | ||||
"""Return the project metadata information (fetched from pypi registry) | """Return the project metadata information (fetched from pypi registry) | ||||
""" | """ | ||||
if not self._info: | if not self._info: | ||||
self._info = api_info(self.provider_url) | self._info = json.loads(api_info(self.provider_url)) | ||||
return self._info | return self._info | ||||
def get_versions(self) -> Sequence[str]: | def get_versions(self) -> Sequence[str]: | ||||
return self.info["releases"].keys() | return self.info["releases"].keys() | ||||
def get_default_version(self) -> str: | def get_default_version(self) -> str: | ||||
return self.info["info"]["version"] | return self.info["info"]["version"] | ||||
▲ Show 20 Lines • Show All 190 Lines • Show Last 20 Lines |
copyright...