style: fix code formatting and linting issues

- Fix whitespace in docstrings and blank lines
- Remove unused variables in tests
- Rename unused loop variables to follow conventions
- All ruff checks now pass

Signed-off-by: Hal <hal.long@outlook.com>
This commit is contained in:
longhao 2025-05-27 18:58:25 +08:00 committed by Hal
parent 6b14ff6da5
commit f2b92ff0ee
6 changed files with 196 additions and 205 deletions

View file

@ -17,7 +17,7 @@ from pypi_query_mcp.tools.package_downloader import download_package_with_depend
async def analyze_pyside2_dependencies():
"""Analyze PySide2 dependencies for Python 3.10."""
print("🔍 Analyzing PySide2 dependencies for Python 3.10...")
try:
result = await resolve_package_dependencies(
package_name="PySide2",
@ -26,23 +26,23 @@ async def analyze_pyside2_dependencies():
include_dev=False,
max_depth=3
)
print(f"✅ Successfully resolved dependencies for {result['package_name']}")
print(f"📊 Summary:")
print("📊 Summary:")
summary = result['summary']
print(f" - Total packages: {summary['total_packages']}")
print(f" - Runtime dependencies: {summary['total_runtime_dependencies']}")
print(f" - Max depth: {summary['max_depth']}")
print(f"\n📦 Package list:")
print("\n📦 Package list:")
for i, pkg in enumerate(summary['package_list'][:10], 1): # Show first 10
print(f" {i}. {pkg}")
if len(summary['package_list']) > 10:
print(f" ... and {len(summary['package_list']) - 10} more packages")
return result
except Exception as e:
print(f"❌ Error analyzing dependencies: {e}")
return None
@ -51,9 +51,9 @@ async def analyze_pyside2_dependencies():
async def download_pyside2_packages():
"""Download PySide2 and its dependencies."""
print("\n📥 Downloading PySide2 and dependencies...")
download_dir = Path("./pyside2_downloads")
try:
result = await download_package_with_dependencies(
package_name="PySide2",
@ -65,9 +65,9 @@ async def download_pyside2_packages():
verify_checksums=True,
max_depth=2 # Limit depth for demo
)
print(f"✅ Download completed!")
print(f"📊 Download Summary:")
print("✅ Download completed!")
print("📊 Download Summary:")
summary = result['summary']
print(f" - Total packages: {summary['total_packages']}")
print(f" - Successful downloads: {summary['successful_downloads']}")
@ -75,14 +75,14 @@ async def download_pyside2_packages():
print(f" - Total size: {summary['total_downloaded_size']:,} bytes")
print(f" - Success rate: {summary['success_rate']:.1f}%")
print(f" - Download directory: {summary['download_directory']}")
if result['failed_downloads']:
print(f"\n⚠️ Failed downloads:")
print("\n⚠️ Failed downloads:")
for failure in result['failed_downloads']:
print(f" - {failure['package']}: {failure['error']}")
return result
except Exception as e:
print(f"❌ Error downloading packages: {e}")
return None
@ -91,7 +91,7 @@ async def download_pyside2_packages():
async def analyze_small_package():
"""Analyze a smaller package for demonstration."""
print("\n🔍 Analyzing 'click' package dependencies...")
try:
result = await resolve_package_dependencies(
package_name="click",
@ -100,26 +100,26 @@ async def analyze_small_package():
include_dev=False,
max_depth=5
)
print(f"✅ Successfully resolved dependencies for {result['package_name']}")
# Show detailed dependency tree
print(f"\n🌳 Dependency Tree:")
print("\n🌳 Dependency Tree:")
dependency_tree = result['dependency_tree']
for pkg_name, pkg_info in dependency_tree.items():
for _pkg_name, pkg_info in dependency_tree.items():
indent = " " * pkg_info['depth']
print(f"{indent}- {pkg_info['name']} ({pkg_info['version']})")
runtime_deps = pkg_info['dependencies']['runtime']
if runtime_deps:
for dep in runtime_deps[:3]: # Show first 3 dependencies
print(f"{indent} └─ {dep}")
if len(runtime_deps) > 3:
print(f"{indent} └─ ... and {len(runtime_deps) - 3} more")
return result
except Exception as e:
print(f"❌ Error analyzing dependencies: {e}")
return None
@ -129,26 +129,26 @@ async def main():
"""Main demonstration function."""
print("🚀 PyPI Query MCP Server - Dependency Analysis Demo")
print("=" * 60)
# Analyze a small package first
click_result = await analyze_small_package()
# Analyze PySide2 dependencies
pyside2_result = await analyze_pyside2_dependencies()
# Optionally download packages (commented out to avoid large downloads in demo)
# download_result = await download_pyside2_packages()
print("\n" + "=" * 60)
print("✨ Demo completed!")
if click_result:
print(f"📝 Click analysis saved to: click_dependencies.json")
print("📝 Click analysis saved to: click_dependencies.json")
with open("click_dependencies.json", "w") as f:
json.dump(click_result, f, indent=2)
if pyside2_result:
print(f"📝 PySide2 analysis saved to: pyside2_dependencies.json")
print("📝 PySide2 analysis saved to: pyside2_dependencies.json")
with open("pyside2_dependencies.json", "w") as f:
json.dump(pyside2_result, f, indent=2)