2626import os
2727import os .path
2828import re
29- import shlex
3029import shutil
3130import subprocess
3231import sys
3736from circuitpython_build_tools import build
3837from circuitpython_build_tools import target_versions
3938
40- import pkg_resources
39+ import importlib .resources as importlib_resources
40+
41+ if sys .version_info < (3 , 8 ):
42+ import importlib_metadata
43+ else :
44+ import importlib .metadata as importlib_metadata
45+
4146
4247BLINKA_LIBRARIES = [
4348 "adafruit-blinka" ,
@@ -244,10 +249,10 @@ def build_bundles(filename_prefix, output_directory, library_location, library_d
244249
245250 libs = _find_libraries (os .path .abspath (library_location ), library_depth )
246251
247- pkg = pkg_resources . get_distribution ( "circuitpython-build-tools" )
248- build_tools_version = "devel"
249- if pkg :
250- build_tools_version = pkg . version
252+ try :
253+ build_tools_version = importlib_metadata . version ( "circuitpython-build-tools" )
254+ except importlib_metadata . PackageNotFoundError :
255+ build_tools_version = "devel"
251256
252257 build_tools_fn = "z-build_tools_version-{}.ignore" .format (
253258 build_tools_version )
@@ -269,8 +274,8 @@ def build_bundles(filename_prefix, output_directory, library_location, library_d
269274 for version in target_versions .VERSIONS :
270275 # Use prebuilt mpy-cross on Travis, otherwise build our own.
271276 if "TRAVIS" in os .environ :
272- mpy_cross = pkg_resources . resource_filename (
273- target_versions .__name__ , "data/mpy-cross-" + version ["name" ])
277+ mpy_cross = importlib_resources . files (
278+ target_versions .__name__ ) / "data/mpy-cross-" + version ["name" ]
274279 else :
275280 mpy_cross = "build_deps/mpy-cross-" + version ["name" ] + (".exe" * (os .name == "nt" ))
276281 build .mpy_cross (mpy_cross , version ["tag" ])
0 commit comments