Fix rocprof-compute TUI build err with python 39 (#303)

* Upgrade min python version from 3.8 to 3.9

* Set min version for textual-fspicker for TUI support

* Update workflows to use python 3.9 instead of 3.8

* fix formatting

* fix bug

---------

Co-authored-by: Vignesh Edithal <Vignesh.Edithal@amd.com>
Этот коммит содержится в:
Fei Zheng
2025-10-20 22:27:35 -06:00
коммит произвёл GitHub
родитель a433e6f48d
Коммит 2c59a82fe1
8 изменённых файлов: 13 добавлений и 14 удалений
+1 -1
Просмотреть файл
@@ -30,7 +30,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.8'
python-version: '3.9'
- name: Check Coverage File Exists
working-directory: projects/rocprofiler-compute
+1 -1
Просмотреть файл
@@ -41,7 +41,7 @@ jobs:
- name: Install Python
uses: actions/setup-python@v5
with:
python-version: '3.8'
python-version: '3.9'
- name: Python dependency installs
working-directory: projects/rocprofiler-compute
run: python3 -m pip install -t${INSTALL_DIR}/python-libs -r requirements.txt
+1 -6
Просмотреть файл
@@ -73,7 +73,7 @@ option(CHECK_PYTHON_DEPS "Verify necessary python dependencies" ON)
if(CHECK_PYTHON_DEPS)
# Python 3 is required
message(STATUS "Detecting Python interpreter...")
find_package(Python3 3.8 COMPONENTS Interpreter REQUIRED)
find_package(Python3 3.9 COMPONENTS Interpreter REQUIRED)
# Allow user-provided python search path
if(DEFINED PYTHON_DEPS)
@@ -96,11 +96,6 @@ if(CHECK_PYTHON_DEPS)
if(${ARGV0} STREQUAL "pyyaml")
set(PACKAGE "yaml")
endif()
# Skip check for textual_fspicker
if(${package} STREQUAL "textual_fspicker")
message(STATUS "Skipping check for textual_fspicker")
return()
endif()
execute_process(
COMMAND ${Python3_EXECUTABLE} -c "import ${PACKAGE}"
OUTPUT_QUIET
+1 -1
Просмотреть файл
@@ -1,6 +1,6 @@
[project]
name = "rocprof_compute"
requires-python = ">=3.8"
requires-python = ">=3.9"
[project.optional-dependencies]
developer = [
+1 -1
Просмотреть файл
@@ -16,5 +16,5 @@ sqlalchemy>=2.0.42
tabulate
textual
textual_plotext
textual-fspicker
textual-fspicker>=0.4.3
tqdm
+3 -1
Просмотреть файл
@@ -25,8 +25,10 @@
import argparse
import copy
from collections import OrderedDict
from collections.abc import Hashable
from pathlib import Path
from typing import Any, Hashable, Optional, OrderedDict
from typing import Any, Optional
import pandas as pd
+2 -1
Просмотреть файл
@@ -24,9 +24,10 @@
##############################################################################
import argparse
import logging
from collections.abc import Hashable
from datetime import datetime
from enum import Enum
from typing import Any, Hashable, Optional
from typing import Any, Optional
import pandas as pd
from textual.widgets import TextArea
+3 -2
Просмотреть файл
@@ -42,9 +42,10 @@ import tempfile
import threading
import time
import uuid
from collections.abc import Generator
from contextlib import contextmanager
from pathlib import Path
from typing import Any, Dict, Generator, Optional, Union, cast
from typing import Any, Optional, Union, cast
import pandas as pd
import yaml
@@ -767,7 +768,7 @@ def run_prof(
if is_mode_live_attach:
@contextmanager
def temporary_env(env_vars: Dict[str, str]) -> Generator[None, None, None]:
def temporary_env(env_vars: dict[str, str]) -> Generator[None, None, None]:
"""
Temporarily change the environment variable of this application.
"""