Wicket’s code lives in apache/wicket on GitHub. Changes arrive as pull requests, and a committer reviews and merges them. For a bug, first open an issue that describes it, ideally with a quickstart that shows it, and refer to the issue from your pull request.
Fork and clone
Fork apache/wicket on GitHub, clone your fork, and add the Wicket repository as upstream:
git clone https://github.com/<your-account>/wicket.git
cd wicket
git remote add upstream https://github.com/apache/wicket.git
Pick the branch
Every release line has a branch. Start from the branch of the line your change is for:
| Branch | Line |
|---|---|
master |
The next major release, Wicket 11. New features go here. |
wicket-10.x |
Wicket 10, the LTS. Fixes that the LTS needs. |
wicket-9.x, wicket-8.x
|
Wicket 9 and 8, until their end of life. |
When a fix is needed on more than one line, say which lines the bug affects in the pull request; the committers decide where it is merged and backported.
git fetch upstream
git checkout -b fix-dropdown-null upstream/master
Build and test
Build Wicket with Maven and run the tests before you send the change:
mvn clean install
Build from source covers the build in more detail, and Set up your IDE the code style.
Send the pull request
Push your branch to your fork and open a pull request against the branch you started from. Describe what changes and why, and link the issue. The project discusses larger changes on the developers list; a short mail there with a link to your pull request helps it get noticed.