Hudson project is always looking for more contributions. Here are some of the possible areas:
Core: Strategic Areas
- Virtual machines and slaves: help Hudson utilize virtualized build slaves by launching and stopping VMs as necessary. A variation of this is to do this on zones. Possible overlap with Stephen's work. Some native interfacing likely. What's cool: virtualization, distributed computing, computing cloud
- Authentication and personalization: now that some basic security infrastructure is place, expand that to better handle personalization. Involves significant work in the core. What's cool: security and stapler, visible feedback on your work
- Update center: simplify plugin deployments and updates through Hudson. Relatively independent from other works. What's cool: still get to deep dive on Hudson w/o overhead. Feel of B2C.
- Intelligence: perform better test result analysis, especially around matrix testing. Analyze build/test failures and try to associate that with changes. What's cool: data-mining, smart heuristics
IDE Integration
- NetBeans plugin had lost the owner, and he agreed to move the code over to Hudson CVS.
- IntelliJ plugin is still in its infancy.
IDE integration has a lot of interesting opportunities, like connecting test results with IDE, opening projects from Hudson, and deferred commit.
What's cool: exposure to different technology set. Free-hand.
Maven & Hudson
A lot of users are moving more and more toward Maven, so a better support for Maven in Hudson is desirable
- Repository browser for Hudson artifacts
- Maven release handling
- Maven site support
Distributed SCM (Mercurial,git,etc) & Hudson
Distributed SCMs like git/Mercurial is picking up a steam, and a real distributed SCM has a lot of synergy with Hudson. So investments in this area will likely be fruitful in the future:
- Making Hudson job a hg repository. In this way a repository can be constantly built/tested, and clone is as easy as job copy
- Repository browsing within Hudson
- Sending changes to upstream, merging changes downstream, etc.
Community Development
- Start a regular Hudson newsletter that summarizes current development efforts, major plugin releases, maybe list users who have committed code since the last newsletter, or bug fix statistics.
- Blog aggregation, with Google Reader: tag posts by random people and aggregate them in a single feed
Infrastructure administration
- Help administer the wiki
QA tools
- Build a mechanism to utilize VMs to be able to exercise some parts of Hudson.
- Include code coverage from plugin test execution in the core's coverage report
Misc
- Better IM support. Common framework in core, Bot, log archiving, notification.
- Better monitoring&management. Monitor resource utilization, report where to add more resources
- Wake-on-lan support for greener computing
- Also check out introductory RFEs for low-hanging fruits that are suitable for new comers.
- Localize Hudson to your language