Move get_version to algo/util.py; fix version to 0.25

This commit is contained in:
MarkRx
2024-12-17 08:44:53 -07:00
parent 75a120952c
commit 452abe2e18
5 changed files with 26 additions and 26 deletions

View File

@ -7,9 +7,9 @@ from litellm import acompletion
from tenacity import retry, retry_if_exception_type, stop_after_attempt from tenacity import retry, retry_if_exception_type, stop_after_attempt
from pr_agent.algo.ai_handlers.base_ai_handler import BaseAiHandler from pr_agent.algo.ai_handlers.base_ai_handler import BaseAiHandler
from pr_agent.algo.utils import get_version
from pr_agent.config_loader import get_settings from pr_agent.config_loader import get_settings
from pr_agent.log import get_logger from pr_agent.log import get_logger
from pr_agent.version import get_version
OPENAI_RETRIES = 5 OPENAI_RETRIES = 5

View File

@ -7,11 +7,13 @@ import html
import json import json
import os import os
import re import re
import sys
import textwrap import textwrap
import time import time
import traceback import traceback
from datetime import datetime from datetime import datetime
from enum import Enum from enum import Enum
from importlib.metadata import PackageNotFoundError, version
from typing import Any, List, Tuple from typing import Any, List, Tuple
import html2text import html2text
@ -1106,3 +1108,24 @@ def process_description(description_full: str) -> Tuple[str, List]:
get_logger().exception(f"Failed to process description: {e}") get_logger().exception(f"Failed to process description: {e}")
return base_description_str, files return base_description_str, files
def get_version() -> str:
# First check pyproject.toml if running directly out of repository
if os.path.exists("pyproject.toml"):
if sys.version_info >= (3, 11):
import tomllib
with open("pyproject.toml", "rb") as f:
data = tomllib.load(f)
if "project" in data and "version" in data["project"]:
return data["project"]["version"]
else:
get_logger().warning("Version not found in pyproject.toml")
else:
get_logger().warning("Unable to determine local version from pyproject.toml")
# Otherwise get the installed pip package version
try:
return version('pr-agent')
except PackageNotFoundError:
get_logger().warning("Unable to find package named 'pr-agent'")
return "unknown"

View File

@ -3,9 +3,9 @@ import asyncio
import os import os
from pr_agent.agent.pr_agent import PRAgent, commands from pr_agent.agent.pr_agent import PRAgent, commands
from pr_agent.algo.utils import get_version
from pr_agent.config_loader import get_settings from pr_agent.config_loader import get_settings
from pr_agent.log import get_logger, setup_logger from pr_agent.log import get_logger, setup_logger
from pr_agent.version import get_version
log_level = os.environ.get("LOG_LEVEL", "INFO") log_level = os.environ.get("LOG_LEVEL", "INFO")
setup_logger(log_level) setup_logger(log_level)

View File

@ -1,23 +0,0 @@
import os
import sys
from importlib.metadata import version, PackageNotFoundError
from pr_agent.log import get_logger
def get_version() -> str:
# First check pyproject.toml if running directly out of repository
if os.path.exists("pyproject.toml"):
if sys.version_info >= (3, 11):
import tomllib
with open("pyproject.toml", "rb") as f:
data = tomllib.load(f)
return data["project"]["version"]
else:
get_logger().warn("Unable to determine local version from pyproject.toml")
# Otherwise get the installed pip package version
try:
return version('pr-agent')
except PackageNotFoundError:
get_logger().error("Unable to find package named 'pr-agent'")
return "unknown"

View File

@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
[project] [project]
name = "pr-agent" name = "pr-agent"
version = "0.2.6" version = "0.2.5"
authors = [{ name = "CodiumAI", email = "tal.r@codium.ai" }] authors = [{ name = "CodiumAI", email = "tal.r@codium.ai" }]