def inner(self, client=None):
        data = extraction_fce(self)
        if client is None:
            logger.warning("Client is None, it was probably disabled")
            data.update_attr('source0', self.archive.name)
            return data
        try:
            release_data = client.release_data(self.name, self.version)
        except BaseException:
            logger.warning("Some kind of error while communicating with "
                           "client: {0}.".format(client),
                           exc_info=True)
            return data
        try:
            url, md5_digest = get_url(client, self.name, self.version)
        except exc.MissingUrlException:
            url, md5_digest = ('FAILED TO EXTRACT FROM PYPI',
                               'FAILED TO EXTRACT FROM PYPI')
        data_dict = {'source0': url, 'md5': md5_digest}

        for data_field in settings.PYPI_USABLE_DATA:
            data_dict[data_field] = release_data.get(data_field, '')

        # we usually get better license representation from trove classifiers
        data_dict["license"] = license_from_trove(
            release_data.get('classifiers', ''))
        data.set_from(data_dict, update=True)
        return data
Beispiel #2
0
    def inner(self, client=None):
        data = extraction_fce(self)
        try:
            if client is None:
                raise ValueError("Client is None.")
            release_data = client.release_data(self.name, self.version)
        except:
            logger.warning('Some kind of error while communicating with client: {0}.'.format(
                client), exc_info=True)
            return data

        url, md5_digest = get_url(client, self.name, self.version)
        data_dict = {'url': url, 'md5': md5_digest}

        for data_field in settings.PYPI_USABLE_DATA:
            data_dict[data_field] = release_data.get(data_field, '')

        # we usually get better license representation from trove classifiers
        data_dict["license"] = utils.license_from_trove(release_data.get('classifiers', ''))
        data.set_from(data_dict, update=True)
        return data
    def inner(self, client=None):
        data = extraction_fce(self)
        if client is None:
            logger.warning("Client is None, it was probably disabled")
            return data
        try:
            release_data = client.release_data(self.name, self.version)
        except:
            logger.warning('Some kind of error while communicating with client: {0}.'.format(
                client), exc_info=True)
            return data
        try:
            url, md5_digest = get_url(client, self.name, self.version)
        except exc.MissingUrlException:
            url, md5_digest = ('FAILED TO EXTRACT FROM PYPI', 'FAILED TO EXTRACT FROM PYPI')
        data_dict = {'url': url, 'md5': md5_digest}

        for data_field in settings.PYPI_USABLE_DATA:
            data_dict[data_field] = release_data.get(data_field, '')

        # we usually get better license representation from trove classifiers
        data_dict["license"] = utils.license_from_trove(release_data.get('classifiers', ''))
        data.set_from(data_dict, update=True)
        return data
Beispiel #4
0
    def inner(self, client=None):
        data = extraction_fce(self)
        try:
            if client is None:
                raise ValueError("Client is None.")
            release_data = client.release_data(self.name, self.version)
        except:
            logger.warning(
                'Some kind of error while communicating with client: {0}.'.
                format(client),
                exc_info=True)
            return data

        url, md5_digest = get_url(client, self.name, self.version)
        data_dict = {'url': url, 'md5': md5_digest}

        for data_field in settings.PYPI_USABLE_DATA:
            data_dict[data_field] = release_data.get(data_field, '')

        # we usually get better license representation from trove classifiers
        data_dict["license"] = utils.license_from_trove(
            release_data.get('classifiers', ''))
        data.set_from(data_dict, update=True)
        return data
Beispiel #5
0
 def test_get_url_raises(self, name, version, wheel, hf, exception,
                         error_msg):
     with pytest.raises(exception) as exc_info:
         get_url(self.client, name, version, wheel, hf)
     assert error_msg == str(exc_info.value)
Beispiel #6
0
 def test_get_url(self, name, version, wheel, hf, expected_url,
                  expected_md5):
     assert (expected_url, expected_md5) == get_url(self.client, name,
                                                    version, wheel, hf)