mirror of
https://github.com/xroche/httrack.git
synced 2026-07-23 09:09:05 +03:00
Both files still describe the pre-July policy and tell contributors to polish each commit message because the branch lands on master as-is. Under squash only the PR title and description survive, so the advice pointed at the wrong thing. Signed-off-by: Xavier Roche <roche@httrack.com> Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1.9 KiB
1.9 KiB
Contributing to HTTrack
HTTrack is small and old. Keep changes easy to review and safe to merge. Working with an AI assistant? The operational checklist is AGENTS.md.
Pull requests
- One change per PR. Small diffs merge fast.
- PRs are squash-merged: one commit per PR goes onto master, built from the PR title and description, so those are the history. Explain why there.
- Be terse in the PR title and description: name the problem, not the fix, don't restate the diff, and calibrate length to the change.
- Add or update tests for engine changes (
tests/), and keep CI green.
Style
- C, matching nearby code. Format only the lines you change (
git clang-formatagainst the repo.clang-format). Never reformat untouched code. - Comment the why, in English.
- HTTrack parses hostile input off the network. Check bounds, avoid unchecked copies, and never let an attacker-controlled length drive arithmetic unchecked.
Sign your work
Every commit needs a Signed-off-by line, the
DCO: git commit -s. CI rejects unsigned
commits; fix a branch with git rebase --signoff master.
AI assistants
Welcome, and nothing to disclose. Two rules:
- Own every line as if you wrote it. Can't explain it in review? Not ready.
- Don't push your work onto reviewers. A raw generated patch a maintainer has to vet from scratch will be closed.
- Attribution is mandatory. AI-assisted commits must carry a
Co-Authored-By:trailer naming the assistant, not a footer in the PR description.
The sign-off covers AI-assisted code too.
Translations
Interface strings live in lang/. See lang/README.md for the file format and how to add or update a language.
Bugs
Open an issue with the version, OS, command used, and expected vs actual result. For security issues see SECURITY.md, not a public issue.