Wan2.1/.github/dependabot.yml
Claude 59d86dfe65
ci: add GitHub Actions CI/CD pipeline and pre-commit hooks
Implements automated testing, code quality checks, and dependency management
for continuous integration and deployment.

GitHub Actions Workflows:
- Code quality & linting (YAPF, Black, isort, mypy)
- CPU-based unit tests for Python 3.10 and 3.11
- Security scanning (safety, bandit)
- Package building and validation
- Documentation building

Pre-commit Hooks:
- File checks (trailing whitespace, EOF, YAML/JSON validation)
- Code formatting (YAPF, Black)
- Import sorting (isort)
- Linting (flake8)
- Type checking (mypy)
- Security checks (bandit)
- Docstring coverage (interrogate)
- Markdown linting

Dependabot Configuration:
- Weekly dependency updates for Python packages
- Grouped updates for related ecosystems (PyTorch, Transformers)
- Automatic PR creation with labels and reviewers
- Security-focused update strategy

Type Checking:
- mypy.ini with gradual typing configuration
- External dependency stub configuration
- Per-module strictness levels

Files Added:
- .github/workflows/ci.yml - CI/CD pipeline
- .github/dependabot.yml - Dependency updates
- .github/pull_request_template.md - PR template
- .github/ISSUE_TEMPLATE/bug_report.yml - Bug report template
- .github/ISSUE_TEMPLATE/feature_request.yml - Feature request template
- .pre-commit-config.yaml - Pre-commit hooks
- mypy.ini - Type checking configuration

Benefits:
- Automated code quality enforcement
- Early detection of bugs and security issues
- Consistent code style across contributors
- Reduced manual review burden
2025-11-19 04:25:02 +00:00

95 lines
2.4 KiB
YAML

# Dependabot configuration for automated dependency updates
# Documentation: https://docs.github.com/en/code-security/dependabot
version: 2
updates:
# Python dependencies
- package-ecosystem: "pip"
directory: "/"
schedule:
interval: "weekly"
day: "monday"
time: "09:00"
open-pull-requests-limit: 10
reviewers:
- "kuaishou/wan-maintainers" # Update with actual team
assignees:
- "kuaishou/wan-maintainers" # Update with actual team
labels:
- "dependencies"
- "python"
commit-message:
prefix: "deps"
prefix-development: "deps-dev"
include: "scope"
# Group minor and patch updates together
groups:
pytorch-ecosystem:
patterns:
- "torch*"
- "torchvision"
update-types:
- "minor"
- "patch"
transformers-ecosystem:
patterns:
- "transformers"
- "diffusers"
- "accelerate"
update-types:
- "minor"
- "patch"
dev-dependencies:
dependency-type: "development"
update-types:
- "minor"
- "patch"
# Ignore specific dependencies that need manual updates
ignore:
# Flash attention requires specific CUDA versions
- dependency-name: "flash-attn"
update-types: ["version-update:semver-major"]
# PyTorch major updates require testing
- dependency-name: "torch"
update-types: ["version-update:semver-major"]
- dependency-name: "torchvision"
update-types: ["version-update:semver-major"]
# Allow specific versions
allow:
- dependency-type: "direct"
- dependency-type: "production"
- dependency-type: "development"
# GitHub Actions
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
day: "monday"
time: "09:00"
open-pull-requests-limit: 5
reviewers:
- "kuaishou/wan-maintainers"
labels:
- "dependencies"
- "github-actions"
commit-message:
prefix: "ci"
include: "scope"
groups:
github-actions:
patterns:
- "*"
update-types:
- "minor"
- "patch"
# Docker (if Dockerfile exists)
# - package-ecosystem: "docker"
# directory: "/"
# schedule:
# interval: "weekly"
# labels:
# - "dependencies"
# - "docker"