- Restructured CONTRIBUTING.md with all nine required sections: - Project licensing (MIT OR Apache-2.0, DCO sign-off required) - Code of conduct (Contributor Covenant v2.1) - Security reporting (link to SECURITY.md) - Development setup (with OCR dependencies) - Local validation checklist (6 commands matching pdftract-ci) - CI on forks caveat (maintainer-triggered, 48-hour response) - PR template requirements - Commit message style (Conventional Commits) - Issue triage - Created CODE_OF_CONDUCT.md (Contributor Covenant v2.1) - Created .github/PULL_REQUEST_TEMPLATE.md with required fields: - Linked issue or RFC - Scope statement (Phase / Acceptance Scenario) - Test plan - Manual-test evidence - Performance impact - Created issue templates: - bug_report.md (with pdftract doctor output requirement) - feature_request.md (with use case and proposed solution) - performance_regression.md (with baseline vs current) - Updated README.md with Contributing section linking to CONTRIBUTING.md - Added footer links to CONTRIBUTING.md in all templates Closes: pdftract-i9rk Verification: notes/pdftract-i9rk.md Signed-off-by: jedarden <github@jedarden.com>
1.9 KiB
1.9 KiB
| name | about | title | labels | assignees |
|---|---|---|---|---|
| Performance regression | Report a slowdown or performance issue | [PERF] | performance |
Performance Issue Description
A clear and concise description of the performance problem.
Baseline vs Current Performance
BEFORE (working well):
- Version: (e.g., 0.5.0)
- Processing time: (e.g., 2.5 seconds for a 100-page PDF)
- Memory usage: (e.g., 150 MB peak)
AFTER (regression):
- Version: (e.g., 0.6.0)
- Processing time: (e.g., 8 seconds for the same PDF)
- Memory usage: (e.g., 600 MB peak)
Test Case
Please provide:
- PDF file (attach or link to a representative file)
- Command used:
pdftract <command> <file> - Benchmark results (before and after):
# Use `hyperfine` or similar for accurate measurements hyperfine 'pdftract old_version' 'pdftract new_version'
Profiling Data (Optional but Helpful)
If available, attach profiling output:
# Flamegraph (Linux)
cargo install flamegraph
cargo flamegraph --bin pdftract -- <args>
# Instruments (macOS)
instruments -t "Time Profiler" cargo run --release -- <args>
# perf (Linux)
perf record -g cargo run --release -- <args>
perf report
Environment
- OS: (e.g., Ubuntu 22.04, macOS 14, Windows 11)
- Hardware: (CPU, RAM - relevant for performance issues)
- pdftract version: (run
pdftract --version) - Rust version: (run
rustc --version)
Suspected Cause
If you have a hypothesis about what's causing the regression (e.g., a specific commit, a new dependency), please describe it here.
Additional Context
Add any other context about the performance issue:
- Logs or traces
- Related issues or PRs
- Workarounds (e.g., using an older version)
Note: For help with development or contributing to pdftract, see CONTRIBUTING.md.
- Logs or traces
- Related issues or PRs
- Workarounds (e.g., using an older version)