@@ -204,7 +204,6 @@ def _install_project_env_custom_tools(project_env, options):
204204
205205
206206def _install_project_env_libraries (project_env , options ):
207- _uninstall_project_unused_libdeps (project_env , options )
208207 already_up_to_date = not options .get ("force" )
209208 config = ProjectConfig .get_instance ()
210209
@@ -242,6 +241,8 @@ def _install_project_env_libraries(project_env, options):
242241 )
243242 lib_deps .extend (test_runner .EXTRA_LIB_DEPS or [])
244243
244+ _uninstall_project_unused_libdeps (env_lm , lib_deps )
245+
245246 for library in lib_deps :
246247 spec = PackageSpec (library )
247248 # skip built-in dependencies
@@ -262,10 +263,8 @@ def _install_project_env_libraries(project_env, options):
262263 return not already_up_to_date
263264
264265
265- def _uninstall_project_unused_libdeps (project_env , options ):
266- config = ProjectConfig .get_instance ()
267- storage_dir = Path (config .get ("platformio" , "libdeps_dir" ), project_env )
268- lib_deps = set (config .get (f"env:{ project_env } " , "lib_deps" ))
266+ def _uninstall_project_unused_libdeps (lm , lib_deps ):
267+ storage_dir = Path (lm .package_dir )
269268 if not lib_deps :
270269 if storage_dir .exists ():
271270 fs .rmtree (str (storage_dir ))
@@ -277,10 +276,7 @@ def _uninstall_project_unused_libdeps(project_env, options):
277276 )
278277 if lib_deps == prev_lib_deps :
279278 return
280- lm = LibraryPackageManager (str (storage_dir ))
281- if options .get ("silent" ):
282- lm .set_log_level (logging .WARN )
283- else :
279+ if lm .log .getEffectiveLevel () < logging .WARN :
284280 click .secho ("Removing unused dependencies..." )
285281 for spec in set (prev_lib_deps ) - set (lib_deps ):
286282 try :
0 commit comments