Commit 926c80f5 authored by Benoit Pierre's avatar Benoit Pierre

wheel: fix `is_compatible` implementation

parent d155aa0d
Fix regression in handling wheels compatibility tags.
...@@ -18,6 +18,7 @@ import pytest ...@@ -18,6 +18,7 @@ import pytest
from pkg_resources import Distribution, PathMetadata, PY_MAJOR from pkg_resources import Distribution, PathMetadata, PY_MAJOR
from setuptools.extern.packaging.utils import canonicalize_name from setuptools.extern.packaging.utils import canonicalize_name
from setuptools.extern.packaging.tags import parse_tag
from setuptools.wheel import Wheel from setuptools.wheel import Wheel
from .contexts import tempdir from .contexts import tempdir
...@@ -571,3 +572,11 @@ def test_wheel_no_dist_dir(): ...@@ -571,3 +572,11 @@ def test_wheel_no_dist_dir():
_check_wheel_install(wheel_path, install_dir, None, _check_wheel_install(wheel_path, install_dir, None,
project_name, project_name,
version, None) version, None)
def test_wheel_is_compatible(monkeypatch):
def sys_tags():
for t in parse_tag('cp36-cp36m-manylinux1_x86_64'):
yield t
monkeypatch.setattr('setuptools.wheel.sys_tags', sys_tags)
assert Wheel('onnxruntime-0.1.2-cp36-cp36m-manylinux1_x86_64.whl').is_compatible()
...@@ -77,7 +77,7 @@ class Wheel: ...@@ -77,7 +77,7 @@ class Wheel:
def is_compatible(self): def is_compatible(self):
'''Is the wheel is compatible with the current platform?''' '''Is the wheel is compatible with the current platform?'''
supported_tags = set(map(str, sys_tags())) supported_tags = set((t.interpreter, t.abi, t.platform) for t in sys_tags())
return next((True for t in self.tags() if t in supported_tags), False) return next((True for t in self.tags() if t in supported_tags), False)
def egg_name(self): def egg_name(self):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment