-
-
Notifications
You must be signed in to change notification settings - Fork 661
Contributing
Matt Simerson edited this page Apr 24, 2024
·
27 revisions
We love and appreciate contributions to Haraka.
- fork, by clicking the Fork button on the GitHub Project Page
- checkout a copy
- create a branch
- make changes
- push changes to your fork
- submit a Pull Request
export GHUSERNAME=CHANGE_THIS
git clone https://github.com/$GHUSERNAME/Haraka.git
cd Haraka
git checkout -b new_branch
$EDITOR server.js
git add server.js
git commit
git push origin new_branch
The git commit
step(s) will launch you into $EDITOR
where the first line should be a summary of the change(s) in less than 50 characters. Additional paragraphs can be added starting on line 3.
To submit new_branch as a Pull Request, visit the Haraka project page where your recently pushed branches will appear with a green "Pull Request" button.
- New features must be documented
- New features should include tests
- 4 spaces for indentation (no tabs)
- Semi-colons on the end of statements are preferred
- Use whitespace between operators - we prefer
if (foo > bar)
overif(foo>bar)
- Don't comment out lines of code, remove them as they will be in the revision history.
- Use boolean true/false instead of numeric 0/1
- See Editor Settings
- run all tests: ./run_tests (or "npm test")
- run tests for a single plugin: ./run_tests tests/plugins/bounce.js
Install Guides
How To
- Upgrade Haraka
- Google Safe Browsing
- Require TLS
- Configure my Editor
- Contribute
- Roll a Release
- Test Email
- Write a Plugin
Future Plans / TODO
Support RFC3464 in bounce messages- Decode Short URLs in data.uribl.js and test the destination URL instead
DKIM verifier
Additional Resources