Community

We love contributors!

Welcome to the PerfCake community! Please dive in wherever takes your fancy! We would like to make your contributions a piece of cake. How To Contribute »

Issue tracker

The project tracks bugs, feature requests, and other issues through the Github issue tracking system.

PerfCake Issue Tracker »

Chat (IRC)

We invite you to join us in the #perfcake channel on irc.freenode.net to chat about PerfCake.

Source Repository

Both git and Github are awesome for collaboration! To make improvements or bug fixes to the PerfCake project, simply fork the project, commit your changes, and send a pull request.

PerfCake sources at GitHub »

Google Group

Mainly for design discussions and a community level support we have a forum group at Google.

PerfCake Google Group »

How to contribute

We love contributions! We really need your help to make PerfCake even more a piece of cake, so please join our community!

Many thanks to all of our existing contributors! But we're greedy, we want more! PerfCake is great, but it can be better! :). We have lots of extensions, generators, senders, validators, reporters... that can be improved and we want more of them!

Here's some notes to help you get started:

Getting Started

  • Make sure you have a GitHub account as you'll need it to submit issues, comments or pull requests.
  • Got any ideas for how we can improve PerfCake? Please submit an issue with your thoughts. Constructive criticism is always greatly appreciated!
  • Fancy submitting any nice story of how you're using PerfCake? A quick Youtube screencast would be even better or a blog post/article we can link to? Just submit an issue (or fork and patch the website) and we'll merge it into our website.
  • Search our issue tracker and see if there's been any ideas or issues reported for what you had in mind; if so please join the conversation in the comments.
  • Submit any issues, feature requests or improvement ideas to our issue tracker.
    • Clearly describe the issue including steps to reproduce when it is a bug.
    • Make sure you fill in the earliest version that you know has the issue.

Fancy hacking some code? cake

  • If you fancy working on some code, check out these lists of issues:
    • cakes - which are moderately easy to fix and tend to have links to which bits of the code to look at to fix at
    • help needed - projects with a span in the range from several days to several weeks, which are suitable for a thesis or a project work or simply when you want to contribute a limited well defined amount of work
    • all open issues - if you fancy being more adventurous.
    • enhancements - if you're feeling like a ninja and fancy tackling our harder issues that tend to add really cool new features!
  • To make code changes, fork the repository on GitHub and then you can hack on the code. We love any contribution such as:
    • fixing typos
    • improving the documentation or embedded help
    • writing new test cases or improve existing ones
    • adding new features

Submitting changes to PerfCake

  • Push your changes to your fork of the PerfCake repository.
  • Submit a pull request to the repository in the PerfCake organization.
  • If your change references an existing issue then use “fixes #123” in the commit message (using the correct issue number).
  • Your work will be reviewed by one of the developers who do not have any mercy. So for your pull request to be accepted make sure to
    • Develop tests for your features/fixes (keep the high level of test coverage),
    • Use the appropriate code style and formatting ( Eclipse configuration file is present in the repo),
    • Avoid introducing new FindBugs warnings (see Developers' Guide to find out how to generate the site report),
    • Keep backward compatibility unless previously discussed with the developers,
    • Write/update the JavaDoc comments,
    • You do not keep unused imports, FIXME comments, unused variables, cryptic code or anything ugly,
    • Submit only a masterpiece code that you could be proud of.

Additional Resources