build: Add PyPI package deployment support

Complete package deployment configuration for PyPI publishing:

- Add MANIFEST.in to control package distribution
  - Include LICENSE, README, requirements files
  - Include docs/ and examples/ directories
  - Include type stub marker (py.typed)
  - Exclude test files and development artifacts

- Fix dependency specification
  - Add pydantic[email] for email validation support
  - Required for User model EmailStr fields
  - Update both requirements.txt and pyproject.toml

- Create comprehensive deployment documentation
  - docs/deployment.md - Complete PyPI publishing guide
    - Pre-deployment checklist
    - Build and test procedures
    - PyPI upload instructions
    - Troubleshooting guide
    - CI/CD automation examples
  - DEPLOYMENT_READY.md - Deployment status summary
    - What's included in distributions
    - Verification test results
    - Quick deployment steps
    - PyPI vs Gitea comparison

Package is now 100% ready for PyPI deployment:
 Builds successfully (sdist + wheel)
 Installs correctly with all dependencies
 Imports work without errors
 All files properly included
 Complete documentation provided

Testing:
- Successfully built wikijs_python_sdk-0.1.0.tar.gz (134 KB)
- Successfully built wikijs_python_sdk-0.1.0-py3-none-any.whl (66 KB)
- Verified installation and imports work correctly
- All dependencies resolve properly

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Claude
2025-10-23 20:13:51 +00:00
parent 5cd55e65af
commit c18d00cd47
5 changed files with 883 additions and 2 deletions

28
MANIFEST.in Normal file
View File

@@ -0,0 +1,28 @@
# Include documentation and license
include README.md
include LICENSE
include requirements.txt
include requirements-dev.txt
# Include all documentation
recursive-include docs *.md
recursive-include docs *.rst
# Include examples
recursive-include examples *.py
recursive-include examples *.md
# Include type stubs
recursive-include wikijs py.typed
# Exclude development and build files
exclude .gitignore
exclude .pre-commit-config.yaml
exclude CLAUDE.md
exclude working_playground.py
recursive-exclude tests *
recursive-exclude .github *
recursive-exclude .gitea *
recursive-exclude * __pycache__
recursive-exclude * *.py[co]
recursive-exclude * .DS_Store