Skip to content

Contributing to Heritrix

Alex Osborne edited this page Jul 4, 2018 · 2 revisions

How can I contribute fixes or features to Heritrix?

Small fixes to existing functionality

Find (or create) an issue in the JIRA issue tracker, and attach your fix in the form of a 'diff' patch.

Emailing the project list or individual developers to highlight changes also welcome. (This might let others know the patches are available to integrate on their own, or remind the core team of availability when prioritizing things for inclusion in an upcoming release.)

New features and large amounts of code

You may wish start a discussion about possible additions, or code you've created and wish to donate, on the project list, to gather feedback and find others interested.

You should also create a JIRA issue to describe and capture comments about your changes, and attach the code as a patch.

Unambiguously ensuring the project(s) may integrate your code

We don't yet have any formal contributor agreement, like the Apache Foundation Contributor Agreement. However, to ensure the project has the right to include your contributions in current and future releases under any open source license, you should include a clear statement with your contribution that you have the right to grant such permission, and do so in the broadest possible terms.

We recommend the following boilerplate, as adapted/excerpted from the Apache agreement, inserted into the JIRA issue of your first contribution under your name/login:

I hereby grant to the project and to recipients of software distributed by the project a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute my contributions and such derivative works.

I represent that I am legally entitled to grant the above license.

Unless required by applicable law or agreed to in writing, I provide my contributions on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE.

As noted in the Apache case, this grant does not change your rights to use your own contributions for any other purpose – you retain all other rights.

Becoming a committer

Thus far, code committers to our master source repository at Sourceforge have all at one point been employees of the Internet Archive or other partner institutions with an organizational commitment to the project's development. However, any contributor who demonstrates adequate skill and judgement through participation in project discussions and submitted patches is eligible to become a committer. A formal process is not yet set up; contact the IA team and project lead(s) for more info.

Other steps

If you are willing to do so, please add a note about your use of Heritrix to the Users of Heritrix page.

Heritrix

Structured Guides:

Wiki index

FAQs

User Guide

Knowledge Base

Known Issues

Background Reading

Users of Heritrix

How To Crawl

Development

Clone this wiki locally