Skip to content

✨ feat(support): add pixi and pdm package manager support #10

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Aug 17, 2025

Conversation

KemingHe
Copy link
Owner

Major feature expansion adding pixi and pdm package manager support alongside Python 3.13 upgrade, extending coverage from 4 to 6 Python package managers with full auto-updating documentation pipeline.

Closes #7
Closes #8

🎯 Key Features

  • Pixi Integration: Complete support for prefix-dev/pixi documentation with auto-update workflow
  • PDM Integration: Full pdm-project/pdm documentation integration and search capabilities
  • Python 3.13 Upgrade: Modernized development and Docker environments to Python 3.13
  • Enhanced MCP Tool: Extended search tool to support 6 package managers with type-safe filtering
  • Documentation Overhaul: Comprehensive updates across all README files with proper package manager links

💼 Business Impact

  • Market Coverage: Expands from 4 to 6 major Python package managers, covering broader ecosystem needs
  • Modular Design Validation: Demonstrates ease of system upgrades through clean architecture patterns
  • User Experience: Developers can now access official pixi and pdm documentation alongside existing tools
  • Auto-Update Pipeline: Weekly documentation sync now includes all 6 package managers automatically
  • Developer Adoption: Supports emerging package managers gaining traction in Python community

🔧 Technical Highlights

  • Matrix-Driven Architecture: Added pixi/pdm with just 2 clean matrix entries, validating scalable design
  • Type System Safety: Extended Literal types maintain compile-time safety for new package filters
  • Performance Optimization: Doubled search index heap allocation (50MB→100MB) for larger dataset
  • GitHub Actions Enhancement: Removed signoff requirements (bot compatibility) while maintaining automation
  • Zero Breaking Changes: Backward-compatible API ensures seamless upgrades for existing users
  • Documentation Consistency: Unified link structure and roadmap updates across all user-facing content

CHANGES
- Update .python-version to 3.13 for development environment
- Update Dockerfile to use python3.13-alpine for both builder and runtime stages
- Update pyproject.toml requires-python to >=3.13
- Refresh uv.lock with Python 3.13 dependencies

IMPACT
- Development and Docker environments now use Python 3.13
- Ensures consistency across local development and containerized deployments
closes #8
closes #7

CHANGES
- Add pixi and pdm to auto-update workflow matrix
- Update MCP server tool to support 6 package managers total
- Extend search index schema documentation and heap allocation
- Update all README files with pixi and pdm references
- Add comprehensive package manager links in documentation
- Update roadmap to reflect completed pixi and pdm support
- Remove signoff option from GitHub Actions (bot cannot sign without token)

IMPACT
- Users can now search pixi and pdm official documentation
- Auto-updating pipeline includes pixi and pdm docs weekly
- Expands coverage from 4 to 6 major Python package managers

TECHNICAL NOTES
- Modular workflow architecture enabled clean 2-line additions to matrix
- Type system updates maintain compile-time safety for new package filters
- Documentation structure scales seamlessly to additional package managers
@KemingHe KemingHe requested a review from Copilot August 17, 2025 03:13
@KemingHe KemingHe self-assigned this Aug 17, 2025
@KemingHe KemingHe added documentation Improvements or additions to documentation enhancement New feature or request labels Aug 17, 2025
Copy link

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds support for two new Python package managers (pixi and pdm) to the existing MCP server, expanding coverage from 4 to 6 package managers. The changes also include a Python version upgrade to 3.13 and performance optimizations for the search index.

  • Extends package manager support by adding pixi and pdm to existing pip, conda, poetry, and uv
  • Upgrades Python version requirement from 3.12 to 3.13 across all environments
  • Doubles search index heap allocation from 50MB to 100MB for improved performance

Reviewed Changes

Copilot reviewed 10 out of 11 changed files in this pull request and generated no comments.

Show a summary per file
File Description
src/mcp_server.py Updates type annotations and documentation to include new package managers
src/build_index.py Increases heap size and updates schema documentation for new packages
pyproject.toml Bumps version to 0.1.1 and upgrades Python requirement to 3.13
README.md Updates package manager list with proper links and marks roadmap items complete
README-dockerhub.md Adds major update notice and updates package manager documentation
Dockerfile Upgrades base images from Python 3.12 to 3.13
CONTRIBUTING.md Minor formatting improvements and documentation updates
.python-version Updates Python version from 3.12 to 3.13
.github/workflows/auto-update-index.yml Removes signoff requirement from commit options
.github/workflows/auto-update-docs.yml Adds pixi and pdm to documentation update matrix and removes signoff

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@KemingHe KemingHe merged commit cc019a9 into main Aug 17, 2025
4 checks passed
@KemingHe KemingHe deleted the feat/pixi-pdm-support/KemingHe branch August 17, 2025 03:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

✨ feat(pixi): include pixi docs as part of the auto-update and publish ✨ feat(pdm): include pdm docs as part of the auto-update and publish
1 participant