Switch from pkg_resources to importlib
Seen on Arch Linux: ModuleNotFoundError: No module named 'pkg_resources' On new enough Python, we don't need it anyway. Change-Id: I3d46319a36a1c2477e9f7dae0c7e40a362a17639
This commit is contained in:
parent
0f2b567953
commit
16f0034e67
@ -12,16 +12,30 @@
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
import pkg_resources
|
||||
version_string = None
|
||||
|
||||
# First, try to get our version out of PKG-INFO. If we're installed,
|
||||
# this'll let us find our version without pulling in pbr. After all, if
|
||||
# we're installed on a system, we're not in a Git-managed source tree, so
|
||||
# pbr doesn't really buy us anything.
|
||||
try:
|
||||
# First, try to get our version out of PKG-INFO. If we're installed,
|
||||
# this will let us find our version without pulling in pbr. After all, if
|
||||
# we're installed on a system, we're not in a Git-managed source tree, so
|
||||
# pbr doesn't really buy us anything.
|
||||
version_string = pkg_resources.get_provider(
|
||||
pkg_resources.Requirement.parse('python-swiftclient')).version
|
||||
except pkg_resources.DistributionNotFound:
|
||||
import importlib.metadata
|
||||
except ImportError:
|
||||
# python < 3.8
|
||||
import pkg_resources
|
||||
try:
|
||||
version_string = pkg_resources.get_provider(
|
||||
pkg_resources.Requirement.parse('python-swiftclient')).version
|
||||
except pkg_resources.DistributionNotFound:
|
||||
pass
|
||||
else:
|
||||
try:
|
||||
version_string = importlib.metadata.distribution(
|
||||
'python-swiftclient').version
|
||||
except importlib.metadata.PackageNotFoundError:
|
||||
pass
|
||||
|
||||
if version_string is None:
|
||||
# No PKG-INFO? We're probably running from a checkout, then. Let pbr do
|
||||
# its thing to figure out a version number.
|
||||
import pbr.version
|
||||
|
Loading…
x
Reference in New Issue
Block a user