mirror of
https://github.com/microsoft/agent-framework.git
synced 2026-06-16 21:04:09 +08:00
Python: [BREAKING] update to v1.0.0 (#5062)
* updates to final deprecated pieces and versions * fix mypy * fix readme links
This commit is contained in:
committed by
GitHub
Unverified
parent
5f06b68535
commit
3446eb8d5d
@@ -8,6 +8,7 @@ from __future__ import annotations
|
||||
import argparse
|
||||
import concurrent.futures
|
||||
import json
|
||||
import logging
|
||||
import os
|
||||
import re
|
||||
import shutil
|
||||
@@ -33,6 +34,8 @@ from scripts.dependencies._dependency_bounds_runtime import (
|
||||
)
|
||||
from scripts.task_runner import discover_projects, extract_poe_tasks, project_filter_matches
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
CHECK_TASK_PRIORITY = ("check", "typing", "pyright", "mypy", "lint")
|
||||
REQ_PATTERN = r"^\s*([A-Za-z0-9_.-]+(?:\[[^\]]+\])?)\s*(.*?)\s*$"
|
||||
SECTION_HEADER_PATTERN = re.compile(r"^\s*\[([^\]]+)\]\s*$")
|
||||
@@ -264,6 +267,12 @@ def _collect_dev_pin_replacements(
|
||||
project = data.get("project", {}) or {}
|
||||
optional_dependencies = project.get("optional-dependencies", {}) or {}
|
||||
dependency_groups = data.get("dependency-groups", {}) or {}
|
||||
logger.debug(
|
||||
"Collecting dev dependency replacements from %s with optional_dependencies=%s and dependency_groups=%s",
|
||||
pyproject_file,
|
||||
optional_dependencies.keys(),
|
||||
dependency_groups.keys(),
|
||||
)
|
||||
workspace_versions = _load_workspace_package_versions(str(pyproject_file.parent.parent.parent.resolve()))
|
||||
|
||||
dev_requirements: list[str] = []
|
||||
@@ -273,6 +282,7 @@ def _collect_dev_pin_replacements(
|
||||
dev_requirements.extend(
|
||||
requirement for requirement in (dependency_groups.get("dev", []) or []) if isinstance(requirement, str)
|
||||
)
|
||||
logger.debug(f"Found {len(dev_requirements)} dev requirements in {pyproject_file}")
|
||||
|
||||
seen_requirements: set[str] = set()
|
||||
replacements: dict[str, str] = {}
|
||||
@@ -293,9 +303,10 @@ def _collect_dev_pin_replacements(
|
||||
if dependency_name.startswith("agent-framework"):
|
||||
latest_version = workspace_versions.get(dependency_name)
|
||||
else:
|
||||
latest_version = _select_latest_dev_version(catalog.get_lock(dependency_name))
|
||||
if latest_version is None:
|
||||
latest_version = _select_latest_dev_version(catalog.get(dependency_name))
|
||||
# Dev-tool refreshes should follow the selected version source (PyPI by default)
|
||||
# instead of being pinned by the current lockfile. VersionCatalog already falls
|
||||
# back to lock data when PyPI cannot be reached or --version-source=lock is used.
|
||||
latest_version = _select_latest_dev_version(catalog.get(dependency_name))
|
||||
if latest_version is None:
|
||||
continue
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import logging
|
||||
import argparse
|
||||
from dataclasses import dataclass
|
||||
from pathlib import Path
|
||||
@@ -20,6 +21,7 @@ from scripts.dependencies._dependency_bounds_upper_impl import (
|
||||
)
|
||||
from scripts.task_runner import discover_projects
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@dataclass(frozen=True)
|
||||
class WorkspaceProject:
|
||||
@@ -125,7 +127,13 @@ def main() -> None:
|
||||
action="store_true",
|
||||
help="Print planned replacements without updating files.",
|
||||
)
|
||||
parser.add_argument(
|
||||
"--verbose",
|
||||
action="store_true",
|
||||
help="Show debug logging.",
|
||||
)
|
||||
args = parser.parse_args()
|
||||
logging.basicConfig(level=logging.DEBUG if args.verbose else logging.INFO, format="%(message)s")
|
||||
|
||||
workspace_root = Path(__file__).resolve().parents[2]
|
||||
lock_versions = _load_lock_versions(workspace_root)
|
||||
@@ -137,6 +145,7 @@ def main() -> None:
|
||||
_discover_workspace_projects(workspace_root),
|
||||
package_filters=args.packages,
|
||||
)
|
||||
logger.debug(f"Selected projects for dev dependency refresh: {[project.pyproject_path for project in selected_projects]}")
|
||||
if not selected_projects:
|
||||
filters = ", ".join(args.packages or [])
|
||||
raise SystemExit(f"No matching workspace projects found for: {filters}")
|
||||
|
||||
@@ -134,7 +134,7 @@ class CustomAgentExecutor(Executor):
|
||||
[
|
||||
Message(
|
||||
role="user",
|
||||
text=f"Validate the following sample:\n\n{sample.relative_path}",
|
||||
contents=[f"Validate the following sample:\n\n{sample.relative_path}"],
|
||||
)
|
||||
],
|
||||
session=self._session,
|
||||
|
||||
Reference in New Issue
Block a user