From 2ffc5ac6e686f4b23ea27cc484430a790723ad79 Mon Sep 17 00:00:00 2001 From: Chen Yudong Date: Wed, 19 Jul 2023 14:45:01 +0800 Subject: [PATCH] change(esp_prov): remove future usage drop python2 support for esp_prov --- .pylintrc | 4 ---- tools/ci/check_requirement_files.py | 2 +- tools/esp_prov/transport/transport_http.py | 14 +++++--------- tools/requirements/requirements.ttfw.txt | 2 -- 4 files changed, 6 insertions(+), 16 deletions(-) diff --git a/.pylintrc b/.pylintrc index 633bee8d5b..419d691365 100644 --- a/.pylintrc +++ b/.pylintrc @@ -146,10 +146,6 @@ disable=print-statement, invalid-name, too-few-public-methods, too-many-locals, - bad-super-call, # since we still haven't drop python2 support - too-many-nested-blocks, - too-many-branches, - too-many-statements, ungrouped-imports, # since we have isort in pre-commit no-name-in-module, # since we have flake8 to check this too-many-instance-attributes, diff --git a/tools/ci/check_requirement_files.py b/tools/ci/check_requirement_files.py index 054cc4721d..b91790801e 100755 --- a/tools/ci/check_requirement_files.py +++ b/tools/ci/check_requirement_files.py @@ -8,8 +8,8 @@ import re from typing import Any import jsonschema +from idf_ci_utils import IDF_PATH -IDF_PATH = os.environ['IDF_PATH'] JSON_PATH = os.path.join(IDF_PATH, 'tools', 'requirements.json') SCHEMA_PATH = os.path.join(IDF_PATH, 'tools', 'requirements_schema.json') REQ_DIR = os.path.join(IDF_PATH, 'tools', 'requirements') diff --git a/tools/esp_prov/transport/transport_http.py b/tools/esp_prov/transport/transport_http.py index a76a1a5b7d..4d21dcd028 100644 --- a/tools/esp_prov/transport/transport_http.py +++ b/tools/esp_prov/transport/transport_http.py @@ -1,18 +1,13 @@ -# SPDX-FileCopyrightText: 2018-2022 Espressif Systems (Shanghai) CO LTD +# SPDX-FileCopyrightText: 2018-2023 Espressif Systems (Shanghai) CO LTD # SPDX-License-Identifier: Apache-2.0 # from __future__ import print_function import socket +from http.client import HTTPConnection, HTTPSConnection -from future.utils import tobytes - -try: - from http.client import HTTPConnection, HTTPSConnection -except ImportError: - # Python 2 fallback - from httplib import HTTPConnection, HTTPSConnection # type: ignore +from utils import str_to_bytes from .transport import Transport @@ -36,8 +31,9 @@ class Transport_HTTP(Transport): self.headers = {'Content-type': 'application/x-www-form-urlencoded','Accept': 'text/plain'} def _send_post_request(self, path, data): + data = str_to_bytes(data) if isinstance(data, str) else data try: - self.conn.request('POST', path, tobytes(data), self.headers) + self.conn.request('POST', path, data, self.headers) response = self.conn.getresponse() # While establishing a session, the device sends the Set-Cookie header # with value 'session=cookie_session_id' in its first response of the session to the tool. diff --git a/tools/requirements/requirements.ttfw.txt b/tools/requirements/requirements.ttfw.txt index e3e213c27a..fd64d0776f 100644 --- a/tools/requirements/requirements.ttfw.txt +++ b/tools/requirements/requirements.ttfw.txt @@ -16,13 +16,11 @@ python-gitlab pygdbmi # ble -future dbus-python; sys_platform == 'linux' pygobject; sys_platform != 'win32' # esp_prov bleak -# future # addressed before under ble protobuf # tools/test_apps/system/monitor_ide_integration