From 727c6a82ea9fb778d543eaacd48f569d37ccb552 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Mon, 19 Aug 2024 18:59:47 +0200 Subject: [PATCH] fix(tools): python3.12 support remove distutils use --- tools/idf_py_actions/create_ext.py | 15 ++++++++------- tools/mass_mfg/mfg_gen.py | 4 ++-- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/tools/idf_py_actions/create_ext.py b/tools/idf_py_actions/create_ext.py index f84b3dbb0258..cffcefd128e5 100644 --- a/tools/idf_py_actions/create_ext.py +++ b/tools/idf_py_actions/create_ext.py @@ -1,11 +1,10 @@ # SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD # SPDX-License-Identifier: Apache-2.0 -from __future__ import print_function - import os import re import sys -from distutils.dir_util import copy_tree +from shutil import copy +from shutil import copytree from typing import Dict import click @@ -40,10 +39,11 @@ def is_empty_and_create(path: str, action: str) -> None: def create_project(target_path: str, name: str) -> None: - copy_tree( + copytree( os.path.join(os.environ['IDF_PATH'], 'examples', 'get-started', 'sample_project'), target_path, - preserve_mode=0, + copy_function=copy, + dirs_exist_ok=True, ) main_folder = os.path.join(target_path, 'main') os.rename(os.path.join(main_folder, 'main.c'), os.path.join(main_folder, '.'.join((name, 'c')))) @@ -53,10 +53,11 @@ def create_project(target_path: str, name: str) -> None: def create_component(target_path: str, name: str) -> None: - copy_tree( + copytree( os.path.join(os.environ['IDF_PATH'], 'tools', 'templates', 'sample_component'), target_path, - preserve_mode=0, + copy_function=copy, + dirs_exist_ok=True, ) os.rename(os.path.join(target_path, 'main.c'), os.path.join(target_path, '.'.join((name, 'c')))) os.rename(os.path.join(target_path, 'include', 'main.h'), diff --git a/tools/mass_mfg/mfg_gen.py b/tools/mass_mfg/mfg_gen.py index 63e21a9ec882..7348ef2a748d 100644 --- a/tools/mass_mfg/mfg_gen.py +++ b/tools/mass_mfg/mfg_gen.py @@ -7,8 +7,8 @@ import csv import os from itertools import zip_longest +from pathlib import Path -import distutils.dir_util import esp_idf_nvs_partition_gen.nvs_partition_gen as nvs_partition_gen @@ -208,7 +208,7 @@ def create_dir(filetype, output_dir_path): """ output_target_dir = os.path.join(output_dir_path,filetype,'') if not os.path.isdir(output_target_dir): - distutils.dir_util.mkpath(output_target_dir) + Path(output_target_dir).mkdir(parents=True) return output_target_dir