# Contributing to log4net Development

## Developer Mailing List

All discussion relating to log4net development takes place on this list. All CVS checkin notifications are also copied to this list.

### Mailing List Archives

You can browse the mailing list archives at the following locations:

- mod_mbox
- eyebrowse
- MARC
- Old Mailing List at sourceforge

### Subscribe

Subscribe to either the list or to the digest list:

- To subscribe to this list send an e-mail to
  log4net-dev-subscribe@logging.apache.org.

- To subscribe to the digest list sent an e-mail to
  log4net-dev-digest-subscribe@logging.apache.org.

### Unsubscribe

To unsubscribe send an email to the relevant email address:

- To unsubscribe from this list send an e-mail to
  log4net-dev-unsubscribe@logging.apache.org.

- To unsubscribe from the digest list sent an e-mail to
  log4net-dev-digest-unsubscribe@logging.apache.org.

### Posting

Most of the guidelines for the log4net-user list also apply to the dev list. Please have a quick read through the guidelines, thanks.

To prevent spam, we require you to be subscribed to the list before posting to it.

This is the log4net developer list, it holds discussions relating to the development of log4net not the use of log4net. If you have a question that begins with the word "How" or you are unsure as the the appropriate list to post to then you probably want to start with the log4net-user list.

Post to the list by sending mail to log4net-dev@logging.apache.org.

## CVS Access

### Browsing CVS

Browse log4net CVS repository using ViewCVS.

### Anonymous CVS Access

Anyone can checkout source code from our anonymous CVS server. To do so, simply use the following commands (if you are using a GUI CVS client, configure it appropriately).

First login to the CVS server as the anonymous user.

    cvs -d :pserver:anoncvs@cvs.apache.org:/home/cvspublic login
    password: anoncvs

Then checkout the logging-log4net module.

    cvs -d :pserver:anoncvs@cvs.apache.org:/home/cvspublic checkout logging-log4net

If you are not familiar with CVS, Jakarta's CVS page may hold many helpful hints.

## Issue Tracking

Many bugs reported end up not being a bug in the log4net code, but are due to incorrect configuration, problems caused by installed applications, the operating system, etc.

Before reporting a bug please make every effort to investigate and resolve the problem yourself. Just reporting a bug will not fix it. A good bug report includes a detailed description of the problem and a succinct test case which can reproduce the problem.

Before reporting an issue please investigate the following information sources for a potential resolution.

- Documentation
- Internal log4net debug
- FAQs
- Mailing Lists

Before reporting a bug, you are advised to discuss it on the relevant mailing list first.

Search the bug database to see if the bug you are seeing has already been reported. If it has been reported then you can vote for the issue.

### Reporting an Issue

If after you have exhausted all other resources to resolve a problem you may want to file a bug report. Please make sure the problem is a bug in Logging and not a bug in your application.

Please make sure you provide as much information as possible. Its very hard to fix a bug if the person looking into the problem can't reproduce it. Here is a listing of information which should be included:

- Version - log4net version, or if from a nightly build, version and date of build.
- Application Type - Assembly type, i.e. exe or dll, and how your code is launched, e.g. console application, windows application, ASP.NET project, COM+ hosted object, etc...
- Framework - The .NET framework running the application, name (e.g. MS .NET, Mono, SSCLI) and version.
- Platform - Computer operating system, version, and hardware platform in use.
- Configuration - Attach configuration files if they would help track down the bug.
- Log Files - Review your logs files, produced with internal log4net debug enabled. Submit any relevant sections of the log which help document the bug.
- Stack Traces - Any stack traces generated by the bug, if any.
- Example - Example configuration files or web applications which demonstrate the bug. When submitting an example which reproduces the bug, please try to make it as simple as possible.
- Bug Fix Patch - A patch created using diff -u which fixes the bug. (If you have found a bug fix which can be applied to the code).
- Description of the Bug - A description of the bug, include observed as well as expected behaviour.
- Miscellaneous - Any other information you feel will help track down the problem.

Just reporting a bug will not fix it. A good bug report includes a detailed description of the problem and a succinct test case which can reproduce the problem.

Report a log4net bug.

Copyright © 2004-2005, Apache Software Foundation