Skip to content

Commit

Permalink
Stop using pkg_resources in Python 3.10 and later
Browse files Browse the repository at this point in the history
  • Loading branch information
ni-jfitzger committed Apr 19, 2024
1 parent 425c8af commit cf08227
Show file tree
Hide file tree
Showing 11 changed files with 177 additions and 33 deletions.
20 changes: 17 additions & 3 deletions build/templates/__init__.py.mako
Original file line number Diff line number Diff line change
Expand Up @@ -69,8 +69,8 @@ def get_diagnostic_information():

note: Python bitness may be incorrect when running in a virtual environment
'''
import importlib.metadata
import os
import pkg_resources
import platform
import struct
import sys
Expand Down Expand Up @@ -107,8 +107,22 @@ def get_diagnostic_information():
else:
raise SystemError('Unsupported platform: {}'.format(platform.system()))

installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]
if sys.version_info[1] >= 10:
installed_packages_names = [
name
for name_list in importlib.metadata.packages_distributions().values()
for name in name_list
]
installed_packages_names = set(installed_packages_names)
installed_packages_list = [
{'name': name, 'version': importlib.metadata.distribution(name).version}
for name in installed_packages_names
]
## TODO (ni-jfitzger): Delete use of pkg_resources when we drop Python 3.9 support. See https://github.com/ni/nimi-python/issues/2047
else:
import pkg_resources
installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]

info['os']['name'] = os_name
info['os']['version'] = platform.version()
Expand Down
19 changes: 16 additions & 3 deletions generated/nidcpower/nidcpower/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@ def get_diagnostic_information():
note: Python bitness may be incorrect when running in a virtual environment
'''
import importlib.metadata
import os
import pkg_resources
import platform
import struct
import sys
Expand Down Expand Up @@ -64,8 +64,21 @@ def is_venv():
else:
raise SystemError('Unsupported platform: {}'.format(platform.system()))

installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]
if sys.version_info[1] >= 10:
installed_packages_names = [
name
for name_list in importlib.metadata.packages_distributions().values()
for name in name_list
]
installed_packages_names = set(installed_packages_names)
installed_packages_list = [
{'name': name, 'version': importlib.metadata.distribution(name).version}
for name in installed_packages_names
]
else:
import pkg_resources
installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]

info['os']['name'] = os_name
info['os']['version'] = platform.version()
Expand Down
19 changes: 16 additions & 3 deletions generated/nidigital/nidigital/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@ def get_diagnostic_information():
note: Python bitness may be incorrect when running in a virtual environment
'''
import importlib.metadata
import os
import pkg_resources
import platform
import struct
import sys
Expand Down Expand Up @@ -58,8 +58,21 @@ def is_venv():
else:
raise SystemError('Unsupported platform: {}'.format(platform.system()))

installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]
if sys.version_info[1] >= 10:
installed_packages_names = [
name
for name_list in importlib.metadata.packages_distributions().values()
for name in name_list
]
installed_packages_names = set(installed_packages_names)
installed_packages_list = [
{'name': name, 'version': importlib.metadata.distribution(name).version}
for name in installed_packages_names
]
else:
import pkg_resources
installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]

info['os']['name'] = os_name
info['os']['version'] = platform.version()
Expand Down
19 changes: 16 additions & 3 deletions generated/nidmm/nidmm/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ def get_diagnostic_information():
note: Python bitness may be incorrect when running in a virtual environment
'''
import importlib.metadata
import os
import pkg_resources
import platform
import struct
import sys
Expand Down Expand Up @@ -56,8 +56,21 @@ def is_venv():
else:
raise SystemError('Unsupported platform: {}'.format(platform.system()))

installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]
if sys.version_info[1] >= 10:
installed_packages_names = [
name
for name_list in importlib.metadata.packages_distributions().values()
for name in name_list
]
installed_packages_names = set(installed_packages_names)
installed_packages_list = [
{'name': name, 'version': importlib.metadata.distribution(name).version}
for name in installed_packages_names
]
else:
import pkg_resources
installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]

info['os']['name'] = os_name
info['os']['version'] = platform.version()
Expand Down
19 changes: 16 additions & 3 deletions generated/nifake/nifake/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ def get_diagnostic_information():
note: Python bitness may be incorrect when running in a virtual environment
'''
import importlib.metadata
import os
import pkg_resources
import platform
import struct
import sys
Expand Down Expand Up @@ -68,8 +68,21 @@ def is_venv():
else:
raise SystemError('Unsupported platform: {}'.format(platform.system()))

installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]
if sys.version_info[1] >= 10:
installed_packages_names = [
name
for name_list in importlib.metadata.packages_distributions().values()
for name in name_list
]
installed_packages_names = set(installed_packages_names)
installed_packages_list = [
{'name': name, 'version': importlib.metadata.distribution(name).version}
for name in installed_packages_names
]
else:
import pkg_resources
installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]

info['os']['name'] = os_name
info['os']['version'] = platform.version()
Expand Down
19 changes: 16 additions & 3 deletions generated/nifgen/nifgen/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ def get_diagnostic_information():
note: Python bitness may be incorrect when running in a virtual environment
'''
import importlib.metadata
import os
import pkg_resources
import platform
import struct
import sys
Expand Down Expand Up @@ -56,8 +56,21 @@ def is_venv():
else:
raise SystemError('Unsupported platform: {}'.format(platform.system()))

installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]
if sys.version_info[1] >= 10:
installed_packages_names = [
name
for name_list in importlib.metadata.packages_distributions().values()
for name in name_list
]
installed_packages_names = set(installed_packages_names)
installed_packages_list = [
{'name': name, 'version': importlib.metadata.distribution(name).version}
for name in installed_packages_names
]
else:
import pkg_resources
installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]

info['os']['name'] = os_name
info['os']['version'] = platform.version()
Expand Down
19 changes: 16 additions & 3 deletions generated/nimodinst/nimodinst/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ def get_diagnostic_information():
note: Python bitness may be incorrect when running in a virtual environment
'''
import importlib.metadata
import os
import pkg_resources
import platform
import struct
import sys
Expand Down Expand Up @@ -54,8 +54,21 @@ def is_venv():
else:
raise SystemError('Unsupported platform: {}'.format(platform.system()))

installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]
if sys.version_info[1] >= 10:
installed_packages_names = [
name
for name_list in importlib.metadata.packages_distributions().values()
for name in name_list
]
installed_packages_names = set(installed_packages_names)
installed_packages_list = [
{'name': name, 'version': importlib.metadata.distribution(name).version}
for name in installed_packages_names
]
else:
import pkg_resources
installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]

info['os']['name'] = os_name
info['os']['version'] = platform.version()
Expand Down
19 changes: 16 additions & 3 deletions generated/niscope/niscope/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ def get_diagnostic_information():
note: Python bitness may be incorrect when running in a virtual environment
'''
import importlib.metadata
import os
import pkg_resources
import platform
import struct
import sys
Expand Down Expand Up @@ -62,8 +62,21 @@ def is_venv():
else:
raise SystemError('Unsupported platform: {}'.format(platform.system()))

installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]
if sys.version_info[1] >= 10:
installed_packages_names = [
name
for name_list in importlib.metadata.packages_distributions().values()
for name in name_list
]
installed_packages_names = set(installed_packages_names)
installed_packages_list = [
{'name': name, 'version': importlib.metadata.distribution(name).version}
for name in installed_packages_names
]
else:
import pkg_resources
installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]

info['os']['name'] = os_name
info['os']['version'] = platform.version()
Expand Down
19 changes: 16 additions & 3 deletions generated/nise/nise/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ def get_diagnostic_information():
note: Python bitness may be incorrect when running in a virtual environment
'''
import importlib.metadata
import os
import pkg_resources
import platform
import struct
import sys
Expand Down Expand Up @@ -55,8 +55,21 @@ def is_venv():
else:
raise SystemError('Unsupported platform: {}'.format(platform.system()))

installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]
if sys.version_info[1] >= 10:
installed_packages_names = [
name
for name_list in importlib.metadata.packages_distributions().values()
for name in name_list
]
installed_packages_names = set(installed_packages_names)
installed_packages_list = [
{'name': name, 'version': importlib.metadata.distribution(name).version}
for name in installed_packages_names
]
else:
import pkg_resources
installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]

info['os']['name'] = os_name
info['os']['version'] = platform.version()
Expand Down
19 changes: 16 additions & 3 deletions generated/niswitch/niswitch/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ def get_diagnostic_information():
note: Python bitness may be incorrect when running in a virtual environment
'''
import importlib.metadata
import os
import pkg_resources
import platform
import struct
import sys
Expand Down Expand Up @@ -56,8 +56,21 @@ def is_venv():
else:
raise SystemError('Unsupported platform: {}'.format(platform.system()))

installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]
if sys.version_info[1] >= 10:
installed_packages_names = [
name
for name_list in importlib.metadata.packages_distributions().values()
for name in name_list
]
installed_packages_names = set(installed_packages_names)
installed_packages_list = [
{'name': name, 'version': importlib.metadata.distribution(name).version}
for name in installed_packages_names
]
else:
import pkg_resources
installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]

info['os']['name'] = os_name
info['os']['version'] = platform.version()
Expand Down
19 changes: 16 additions & 3 deletions generated/nitclk/nitclk/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@ def get_diagnostic_information():
note: Python bitness may be incorrect when running in a virtual environment
'''
import importlib.metadata
import os
import pkg_resources
import platform
import struct
import sys
Expand Down Expand Up @@ -64,8 +64,21 @@ def is_venv():
else:
raise SystemError('Unsupported platform: {}'.format(platform.system()))

installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]
if sys.version_info[1] >= 10:
installed_packages_names = [
name
for name_list in importlib.metadata.packages_distributions().values()
for name in name_list
]
installed_packages_names = set(installed_packages_names)
installed_packages_list = [
{'name': name, 'version': importlib.metadata.distribution(name).version}
for name in installed_packages_names
]
else:
import pkg_resources
installed_packages = pkg_resources.working_set
installed_packages_list = [{'name': i.key, 'version': i.version, } for i in installed_packages]

info['os']['name'] = os_name
info['os']['version'] = platform.version()
Expand Down

0 comments on commit cf08227

Please sign in to comment.